묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실전! 스프링 데이터 JPA
같은 테이블의 외래키와 복합키
안녕하세요 영한님. 항상 강의 잘 듣고있습니다.회사에서 레거시 코드를 엔티티로 변경하다보니 궁금한게 있어 문의드립니다.첫번째 질문혹시 복합키가 3개의 컬럼으로 되어있을 때, 2개의 컬럼이 같은 테이블과 매핑해야 된다면 어떻게 해줘야하는지 알 수 있을까요? @EmbeddedId, @IdClass 둘 다 필드명으로 매핑을 해줘야 하는데, 한 필드밖에 매핑이 안되서 여쭤봅니다.두번째 질문아래 키들이 전부 Enum으로 되어있다면 조인할 때 @Enumrated(STRING) 이 적용이 안되는 것 같은데 어떻게 하면 좋을지 여쭤봅니다.예를 들어,A의 복합키 [a, b, c] 중 [a, b]가 B와 매핑되는 외래키이고, [c]는 C와 매핑되는 외래키입니다.* 여기서 B의 a, b는 B의 PK입니다.* A와 B는 일대다, A와 C 또한 일대다 관계입니다.class A { @Id @Enumerated(STRING) EnumType a; @Id @Enumerated(STRING) EnumType b; @Id @Enumerated(STRING) EnumType c; } class B { @Id @Enumerated(STRING) EnumType a; @Id @Enumerated(STRING) EnumType b; } class C { @Id @Enumerated(STRING) EnumType c; }@EmbeddedId 사용시@Embeddable public class AId implements Serializable { private BId b; @Enumerated(STRING) private EnumType c; } @Embeddable public class BId implements Serializable { @Enumerated(STRING) private EnumType a; @Enumerated(STRING) private EnumType b; } @Entity public class A { @EmbeddedId private AId id; // 쿼리에서 EnumType의 숫자값이 들어갑니다. @ManyToOne(fetch = LAZY) @JoinColumns(value = { @JoinColumn(name = "a"), @JoinColumn(name = "b") }) private B b; }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 데이터JPA 부분에서 오류사항 질문 드립니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]초기에 MemoryMemberRepository 클래스 명을 MemberRepositoryImpl로 진행을 했고 스프링데이터 JPA수강 중에 SpringDataJpaMemberRepository 인터페이스 생성 후 테스트 실행 할 때 available:expected single matching bean but found 2 라는 빈 중복 에러가 떴습니다. @Repository 어노테이션도 지운 상태에서 계속 떴는데 혹시나 싶어 클래스명을 MemoryMemberRepository로 변경했더니 해결됐는데 클래스명에 Impl이 들어간것도 빈 생성을 하는것에 영향을 주는 건가요??
-
미해결실전! 스프링 데이터 JPA
안녕하세요? JPA 학습 관련해서 문의 드립니다!
안녕하세요 김영한 개발팀장님! 저는 서버 개발자로 일을 하고 있는 주니어 개발자입니다! 다름이 아니라 이번에 스프링 프로젝트 서버 담당 업무를 맡게되어 급하게 선생님 스프링 data jpa 강의를 수강하고 있는데요, 처음부터 기초 지식이 없는 상태에서 바로 데이터 JPA 강의를 수강하는게 조금 어려움을 겪고 있어서, 선생님이 출판하신 자바 ORM 표준 JPA 프로그래밍 책에서 필수적으로 어느 챕터들을 우선적으로 선행 학습하면 좋을지 질문 드리고 싶습니다. (예를 들면 JPA 기본편 강의에서 다루신 기초적이고, 핵심적인 내용들) 위에서 질문을 통해 말씀드린 것처럼, JPA 기본편과 활용편 강의 대신, 해당 책으로 기본적인 것들을 공부하고 데이터 JPA 강의를 수강해도 괜찮은 방법일까요? 좋은 강의 제공해주셔서 감사합니다 ^^