inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

JPA 복합키에 localdatetime 사용 시 조회 안되는 원인

323

이건

작성한 질문수 1

0

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로 바꾸니까 조회는 되는데,

이럼 인덱스를 거는 이유가 없어지는거 같아 고민하다 글을 씁니다.

 

도저히 원인을 못찾겠네요 ㅜ

jpa localdatetime

답변 1

0

인프런 AI 인턴

안녕하세요 이건 님, 인프런 AI 인턴이에요.
JPA 복합키에 LocalDateTime을 사용할 때 조회가 되지 않는 문제에 대해 알려드리겠습니다.
Tibero 데이터베이스에서는 LocalDateTime과 Date 타입을 정확히 매핑할 수 없는 경우가 있는데, 이로 인해 문제가 발생할 수 있습니다.
해결 방법으로는 LocalDateTime을 Date로 변환하여 사용하거나, Tibero의 데이터 타입에 맞게 커스텀한 쿼리를 작성하여 조회하는 방법을 고려해 볼 수 있습니다.
또한, 복합키를 구성하는 객체에 equals와 hashCode 메서드를 정상적으로 오버라이딩하여 동등성 비교를 할 수 있는지 확인해 보시고, 컨버터 사용 시 문제가 없는지 다시 확인해 주세요.
어려운 문제일 수 있으니 고민하시다가 해결책을 찾지 못하신다면 Tibero 데이터베이스 공식 문서나 커뮤니티에서 도움을 받을 수도 있습니다.
도움이 되었는지 확인 부탁드리며, 추가적인 질문이 있으시면 언제든지 물어보세요. 감사합니다!

inheritance startegy 선택시 고려사항

0

11

0

Entity 동등성 비교

0

14

1

패키지 구분에 대해 궁금한게 있습니다

0

20

2

스프링부트 서버 에러나요

0

23

1

RepositoryTest의 패키지 위치가 domain인 이유

0

32

2

도메인 모델에서 관계와 규칙을 구분하는 방법

0

41

2

16 강의 메세지 retryCount의 의도

0

25

2

JPA Repository 질문이 있습니다!

1

35

2

페이지네이션 처리를 쿼리에서 하는 방식 질문

1

37

1

UserService, CertificationService 책임 분리 기준 질문

0

28

1

실무 조언 관련 질문입니다.

0

41

1

sdk 설정 오류

0

51

2

H2데이터베이스 파일 생성

0

52

2

SpringBoot 4.X에서의 Querydsl 설정

0

88

2

REQUIRES_NEW 해결 방법에 대해서 질문있습니다!!

0

30

1

오탈자 - @Transactional

0

55

1

Dto와 Entity 사용 관련 질문

0

31

2

서브쿼리 강의에서 ALL 예시 관련 질문드립니다.

0

49

2

EC2 실습 중 docker-compose / docker ps 실행 시 권한 오류 문의

2

72

1

application.properties 작성 관련 질문

0

46

2

색깔구분

0

47

3

gradlew, java -jar 로 애플리케이션 실행시키기에서

1

50

1

리액트 관련 질문이 있습니다.

0

64

2

강의 관련 외 질문입니다.

0

66

2