본문 바로가기
반응형

백엔드159

함수형 인터페이스 함수형 인터페이스 란? 추상 메서드가 하나인 인터페이스 추상 메서드가 하나란 말은 다른 메서드는 있어도 된다는 의미 default 메서드나, static 메서드는 있어도 된다~ 함수형 인터페이스로 쓸때 @FunctionalInterface 어노테이션을 붙여주면 함수형 인터페이스 요건에 어긋나는 경우 잘못됐다고 말해준다. 왜, 어디에 쓰면 좋은가? 구현해야 하는 추상 메서드가 하나이면 람다 표현식으로 코드를 줄일 수 있다. 함수를 매개변수(파라미터, 반환값)으로 전달할 수 있다. 사용법 단축키: control + .(점) 점을 누르거나 전구를 클릭하면 Convert to lambda expression이라고 뜬다. 자바에서 기본 제공하는 인터페이스 함수를 만들어서 쓸 수 있다. 인터페이스를 쓰면 함수를 조.. 2021. 3. 7.
DateTimeOffset 타입 이번에 개발하는 프로그램은 전 세계에서 사용할 수 있는 프로그램이다. 기존에 회사의 프레임워크는 한 국가도 아니고 한 장소에서만 사용하는 프로그램으로 타임존 정보를 고려해서 데이터를 저장할 필요가 없었다. 그런데 이렇게 여러 국가에서 시간 정보가 입력되는 환경으로 변하면서 시간대(TimeZone) 정보를 저장해야 되는 필요성이 생겼다. C#에는 DateTime, DateTimeOffset 두가지 시간 자료형이 있다. 기존 프로그램에서는 시간을 나타낼 때 DateTime 타입만 사용했다. Base 단의 대응도 DateTime 기준으로만 동작하는 부분이 존재했다. 그래서 서버와의 송수신에는 DateTimeOffset을 사용하고 클라이언트에 보여줄때는 Local~~ 이라는 이름의 DateTime 타입을 별도로.. 2021. 3. 4.
TabIndex 속성 다루기 C# 프로그램을 만들다보면 웹 개발할때는 안해도 잘 됐던거 같은데 탭 입력 했을때 컨트롤 포커스 이동이 뒤죽박죽으로 섞이곤 한다. 그러는 이유는 추가한 컴포넌트 순서대로 TabIndex가 증가하는데 UI가 변경되다 보면 뒤죽박죽 섞이기 마련이다. Tab Index 속성은 같은 계층 끼리 이동 순서를 결정한다. 컨트롤의 탭 인덱스 값만 봤을때는 콤보2 --> 콤보 1 --> 텍스트 2 --> 텍스트 1 순으로 탭이 이동할것 같지만 첫번째, 상단 탭 인덱스 1에 포함된 텍스트 1 두번째, 하단 탭 인덱스 2 -> 1 -> 1에 포함된 텍스트 2 세번째, 하단 탭 인덱스 2 -> 1 -> 2에 포함된 콤보 1 네번째, 하단 탭 인덱스 2 -> 1 -> 3에 포함된 콤보 2 순으로 탭이 이동한다. 2021. 3. 4.
스프링부트 Jackson 라이브러리 날짜 타임존이 UTC로 변경되는 문제 해결방법은 아래 설정을 application.properties에 넣는 것 spring.jackson.deserialization.adjust_dates_to_context_time_zone=false 문제 DB에 날짜를 저장할 때 입력한 타임존 정보가 그대로 DB에 저장됐으면 좋겠는데 (어디서 접속해서 변경한것인지 참고하기 위함) 클라이언트에서 전달한 타임존 정보를 Jackson이 파싱하면서 UTC로 변환해 버린다. 찾아본 결과 위 설정을 넣으면 해결된다. 1. 검색어는 "jackson zoneddatetime always utc" - 검색 결과 Why does Jackson's default deserializer set the Zone to UTC rather than Z? I think I mus.. 2021. 2. 26.
바탕화면에 바로가기 갈아끼우기 2021/02/17 - [CS 프로그램/C#] - 바탕화면에 실행파일 바로가기 만들기 바탕화면에 실행파일 바로가기 만들기 https://hvyair.tistory.com/43 [C#] 바로가기 생성 방법 소프트웨어를 설치하면서 바탕화면에 바로가기 생성 옵션을 체크하면 바탕화면에 바로가기가 생성된다. C#에서 코드를 통해 특정 파일의 바로가 qodbtn.tistory.com 이전 글에서 바탕화면에 바로가기 만드는 법은 알았는데 지금 프로그램은 자동 업데이트 기능이 있어서 실행 파일이 변경이 될 수 있다. 실행파일이 갈아끼워지면 바로가기가 깨진다. 단순히 경로에 같은 이름의 파일이 있으면 되는게 아니라 뭔가 실제 파일과 연결이 있는 것 같다. 그래서 바로가기를 갈아끼워야된다. private void Repl.. 2021. 2. 17.
바탕화면에 실행파일 바로가기 만들기 https://hvyair.tistory.com/43 [C#] 바로가기 생성 방법 소프트웨어를 설치하면서 바탕화면에 바로가기 생성 옵션을 체크하면 바탕화면에 바로가기가 생성된다. C#에서 코드를 통해 특정 파일의 바로가기를 생성하는 방법은 생각보다 간단하다. 바로 hvyair.tistory.com private void CreateShortCut() { try { // 바로가기 경로 설정 string Desktop_Dir = Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory); DirectoryInfo DirInfo = new DirectoryInfo(Desktop_Dir); string LinkFileName = Desktop_D.. 2021. 2. 17.
반응형