작성
·
75
0
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.
1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)y
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)y
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)y
[질문 내용]
Caused by: org.hibernate.AnnotationException: Entity 'jpabook.jpashop.domain.Category' has no identifier (every '@Entity' class must declare or inherit at least one '@Id' or '@EmbeddedId' property)
실행시 에러메세지가 뜨는데 @Id 에노테이션이 있음에도 해결되지않습니다.
소스파일도 첨부합니다
https://drive.google.com/file/d/126dOVMwaCPYOSqD4f7XOC0BkCUqtONAK/view?usp=sharing
답변 2
0
안녕하세요, 인프런 AI 인턴입니다.
으르므느님, @Entity
클래스가 적절한 @Id
어노테이션을 갖고 있음에도 org.hibernate.AnnotationException: Entity 'jpabook.jpashop.domain.Category' has no identifier
오류가 발생하는 문제에 대해 문의하셨네요. 이는 Category
엔티티에 올바른 식별자(@Id
)가 설정되지 않았거나, JPA가 인식하지 못하고 있음을 나타냅니다.
유사한 문제와 해결 방법에 대해 공유 드립니다. 강의 내용 중 “실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발”에서 pok_lu님의 질문 “오류”에 대해 강의 제작자 김영한님이 제공한 답변을 확인해 보시면 도움이 될 것입니다.
김영한님은 @Id
어노테이션이 JPA가 제공하는 어노테이션인지 (예: javax.persistence.Id
또는 jakarta.persistence.Id
), 아니면 다른 라이브러리에서 제공하는 동일한 이름의 어노테이션인지 확인하라고 조언하셨습니다. 실제로 문제가 되는 부분은 옳바른 @Id
어노테이션을 사용하지 않아 발생할 수 있습니다.
프로젝트 설정이나 엔티티 정의에 오타 또는 설정 누락이 있는지 점검하시고, 문제가 계속될 경우 김영한님의 답변에서 제시한 해결 방법을 참고해 보세요.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.