분류 전체보기

Spring Framework/Spring

Spring 정렬 Sort, Order 클래스 이해하기 - 정렬 방향, 속성 접근하기

Sort란Sort 클래스는 스프링에서 정렬을 위한 정보를 담고 있습니다.Sort.Order 객체는 정렬 방향과 정렬할 타겟에 대한 정보를 가지고 있습니다.Order 클래스는 Sort 클래스 내부에 있는 내부 클래스입니다. Sort 객체 생성Sort 클래스를 여러 정렬 조건을 정의할 수 있습니다.Sort.by()를 통해 정렬 방향과 속성을 정의합니다.Sort sort = Sort.by(Sort.Order.asc("name"), Sort.Order.desc("age"));Order 클래스property : 정렬할 필드 이름direction : 정렬 방향 Sort.Order 접근Sort 객체 내의 정렬 조건과 정렬 대상 속성을 확인하기 위해서는 Sort 객체를 Stream으로 순회하거나 forEach를 사용해..

트러블슈팅

[트러블슈팅] Spring DateTimeFormatter 생성 비용 최적화

문제 상황Repository에서 (1) 문자열의 값을 특정 date 타입으로 변경하거나 (2) 현재 시간을 특정 date로 변경하기 위해서 DateTimeFormatter를 사용했습니다. 쿼리에 그대로 DateTimeFormatter.ofPattern()을 사용하면 DateTimeFormatter 객체가 여러 번 생성되고 날짜 패턴이 중복으로 하드코딩되는 문제가 있었습니다.그래서 이를 Util 클래스에 static으로 만들어 둔 다음 하나의 DateTimeFormatter를 사용하려고 했습니다.public static DateTimeFormatter hmFormatter() { return DateTimeFormatter.ofPattern("HH:mm");}public static DateTimeFo..

Spring Framework/Spring boot

Spring Boot Open-In-View 설정과 데이터베이스 성능 최적화, 영속성 컨텍스트 활용법

OSIV - Open Session In ViewOSIV OnJPA에서 Entity Manager가 Hibernate에서 Session 역할을 수행합니다.spring.jpa.open-in-view: true (default)OSIV 전략은 트랜잭션 시작처럼 최초 데이터베이스 커넥션 시작 시점부터 API 응답이 끝날 때까지 영속성 컨텍스트와 데이터베이스 커넥션을 유지합니다. (Lazy Loading…) 지연 로딩은 영속성 컨텍스트가 살아있어야 가능합니다. (영속성 컨텍스트는 기본적으로 데이터베이스 커넥션을 유지합니다.)OSIV가 on인 경우에 Service 계층에서 @Trasanctional이 끝나도 데이터베이스 커넥션이 끊기지 않는다. 지연로딩과 같이 프록시 객체가 초기화되는 경우가 있으므로 사용자에게 ..

Spring Framework/Spring

Spring MessageSource를 이용한 다국어 메시지 처리: LocaleResolver와 LocaleContextHolder 활용법

MessageSourceSpring이 기본적인 메시지와 국제화 기능을 제공하는 인터페이스입니다.이를 통해 각 나라별로 메시지 파일을 관리하여, 사용자의 언어별로 메시지를 전달할 수 있습니다.서버는 HTTP Accept-Language 헤더 값을 통해 message 언어를 기본적으로 설정해 줍니다.// messages_ko.propertieserror.key=기본 에러 메시지error.value={0} 에러 필드// === //// messages_en.propertieserror.key=Default error messageerror.value={0} error field Message Properties 생성Bundle 생성 방법사용할 Locale properties 생성 MessageSource 설정..

kylo
'분류 전체보기' 카테고리의 글 목록 (12 Page)