방명록
- [Spring Boot] LocalDateTime과 DB의 시간 데이터 불일치, 쿼리 오작동 문제(DateTimeFormatter으로 해결)2024년 05월 09일 11시 13분 17초에 업로드 된 글입니다.작성자: DandyNow728x90반응형
1. 날짜 조건 검색 시 불일치 문제
Spring Boot에서 MyBatis를 이용해 DB 데이터를 조회하였다. 조회 조건에서 시간을 기준으로 조회하는 경우 기준 시간 이후의 데이터가 와야 하는데 그 이전 시간 데이터도 함께 오는 현상이 발생했다.
2. DateTimeFormatter으로 해결
서버의 날짜 데이터의 경우 "2024-05-09 08:17:25"와 같은 문자열 형식으로 저장되어 있다. LocalDateTime 타입의 시간으로 조회 시 제대로 된 조회가 되지 않았다. DateTimeFormatter를 이용해 "yyyy-MM-dd HH:mm:ss" 형식의 문자열로 변경하여 쿼리를 날리니 정상적으로 조회가 되었다.
LocalDateTime now = LocalDateTime.now(); LocalDateTime before; before = now.minusMinutes(5); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String formattedDateTime = before.format(formatter); // formattedDateTime 값을 쿼리에서 사용하면 된다.
728x90반응형'언어·프레임워크 > Spring Boot' 카테고리의 다른 글
[Spring Boot] application.properties 환경별 설정 (0) 2024.11.04 [Spring Boot][TROUBLESHOOTING] 6초 이상의 첫 로딩 시간 문제 해결 (0) 2024.05.20 [Spring Boot] ubuntu에서 git clone 후 gradle build하기 (0) 2024.05.09 [Spring Boot] gradle lombok Slf4j로 테스트 코드 로그 찍기 (0) 2024.04.10 [Spring Boot] MySQL 연동 application.yml 설정 (1) 2024.04.08 다음글이 없습니다.이전글이 없습니다.댓글