JPA 복합키에 localdatetime 사용 시 조회 안되는 원인
328
작성한 질문수 1
db 는 tibero 입니다..
테이블은 키가 date, varchar 타입이고
엔티티는 localdatetime, string 타입인데,
문제는 각각 컬럼으로 조회는 되지만, key 객체를 생성해서 findById를 하면 조회가 되질 않습니다.
euquals, hashcode 추가 했고, 컨버터도 사용해봤지만 이 문제는 아닌 것 같습니다.
생성한 키
KEY(inspDt=2023-10-31T12:19:04, inspId=INP0000001)
전체 조회해서 확인 한 키
KEY(inspDt=2023-10-31T12:19:04, inspId=INP0000001)
혹시나 해서 db 테이블 index를 nonunique로 바꾸니까 조회는 되는데,
이럼 인덱스를 거는 이유가 없어지는거 같아 고민하다 글을 씁니다.
도저히 원인을 못찾겠네요 ㅜ
답변 1
0
안녕하세요 이건 님, 인프런 AI 인턴이에요.
JPA 복합키에 LocalDateTime을 사용할 때 조회가 되지 않는 문제에 대해 알려드리겠습니다.
Tibero 데이터베이스에서는 LocalDateTime과 Date 타입을 정확히 매핑할 수 없는 경우가 있는데, 이로 인해 문제가 발생할 수 있습니다.
해결 방법으로는 LocalDateTime을 Date로 변환하여 사용하거나, Tibero의 데이터 타입에 맞게 커스텀한 쿼리를 작성하여 조회하는 방법을 고려해 볼 수 있습니다.
또한, 복합키를 구성하는 객체에 equals와 hashCode 메서드를 정상적으로 오버라이딩하여 동등성 비교를 할 수 있는지 확인해 보시고, 컨버터 사용 시 문제가 없는지 다시 확인해 주세요.
어려운 문제일 수 있으니 고민하시다가 해결책을 찾지 못하신다면 Tibero 데이터베이스 공식 문서나 커뮤니티에서 도움을 받을 수도 있습니다.
도움이 되었는지 확인 부탁드리며, 추가적인 질문이 있으시면 언제든지 물어보세요. 감사합니다!
안녕하세요 치킨 디도스 이벤트 보고 흉내내보려 들어왔습니다..
0
25
2
join에대해 질문드립니다.
0
22
1
코드 질문
0
30
2
To-Do App
0
27
1
twitterdb 연결이 안돼요
1
30
2
@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.
0
33
2
changeTeam 메서드 질문
0
35
1
테스트 관련 질문!
0
57
2
안녕하세요 질문있습니다.
0
49
2
application.properties가 적용되지 않아요
1
74
3
새 프로젝트 속 제너레이터에 SpringBoot가 없습니다.
0
55
2
설정 정보 없이 임베디드 데이터베이스 생성
0
41
1
OrderServiceTest 상문주문 테스트 시 update 쿼리 문의
0
42
1
N+1 관련해서 질문있습니다.
0
97
3
벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?
0
57
2
inheritance startegy 선택시 고려사항
0
41
1
Entity 동등성 비교
0
46
1
패키지 구분에 대해 궁금한게 있습니다
0
51
2
스프링부트 서버 에러나요
0
37
1
RepositoryTest의 패키지 위치가 domain인 이유
0
60
2
도메인 모델에서 관계와 규칙을 구분하는 방법
0
87
2
16 강의 메세지 retryCount의 의도
0
46
2
JPA Repository 질문이 있습니다!
1
58
2
페이지네이션 처리를 쿼리에서 하는 방식 질문
1
50
1





