inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

JPA 1:1 연관관계 설정

120

quuu

작성한 질문수 1

0

안녕하세요
양방향 1:1 연관관계 관련되서 이해가 잘 되지않아 문의드립니다!
부모 entity, 자식 entity가 무조건 1:1 관계인 경우
자식은 없을 수 도 있지만 부모는 항상 존재해야함으로 부모 entity가 주최가 되는게 맞는걸로 알고있는데
자식이 존재하는 경우 데이터 등록 시 부모 테이블에만 등록이 되는데
엔티티 설정이 잘못된 부분이 어디인지 잘 모르겠습니다.. ㅠㅠ
@Getter
@Setter
@NoArgsConstructor(access = AccessLevel.PUBLIC)
@Entity
@Table(name = "TB_MANAGER")
@DynamicInsert
@DynamicUpdate
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class Manager  {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "MANAGER_KEY")
    @ApiModelProperty(value = "관리자 시퀀스", hidden = true, name = "managerKey")
    private Long managerKey;

    @Column(name = "MANAGER_ID")
    @ApiModelProperty(value = "관리자 아이디", name = "managerId")
    private String managerId;

    @Column(name = "PASSWORD")
    @ApiModelProperty(value = "비밀번호", name = "password")
    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    private String password;


    @Column(name = "NAME")
    @ApiModelProperty(value = "이름", name = "name")
    private String name;

    @OneToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "MANAGER_KEY")
    private ManagerSub managerSub;
	
}

@Getter
@NoArgsConstructor(access = AccessLevel.PUBLIC)
@Entity
@Table(name = "TB_MANAGER_SUB")
@DynamicInsert
@DynamicUpdate
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class ManagerSub {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "MANAGER_SUB_KEY")
    @ApiModelProperty(value = "zzz", hidden = true, name = "managerSubKey")
    private Long managerSubKey;

    @Column(name = "MANAGER_KEY")
    private Long managerKey;

    @Column(name = "COUNT")
    @ApiModelProperty(value = "수", name = "count")
    private Long count;

    @Column(name = "PHONE")
    @ApiModelProperty(value = " 전화번호", name = "phone")
    private String phone;

    @OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
    @JoinColumn(name = "MANAGER_KEY", insertable = false, updatable = false)
    private Manager manager;
	
	}

OnetoOne jpa

답변 0

코드 질문

0

11

0

To-Do App

0

20

1

twitterdb 연결이 안돼요

1

24

2

@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.

0

32

2

changeTeam 메서드 질문

0

34

1

테스트 관련 질문!

0

50

2

안녕하세요 질문있습니다.

0

46

2

application.properties가 적용되지 않아요

1

68

3

새 프로젝트 속 제너레이터에 SpringBoot가 없습니다.

0

53

2

설정 정보 없이 임베디드 데이터베이스 생성

0

37

1

OrderServiceTest 상문주문 테스트 시 update 쿼리 문의

0

40

1

N+1 관련해서 질문있습니다.

0

90

3

벌크연산에서 member.getAge 호출 시 영속성 컨텍스트에서 데이터를 가져오는건가요?

0

54

2

inheritance startegy 선택시 고려사항

0

35

1

Entity 동등성 비교

0

38

1

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

0

46

2

스프링부트 서버 에러나요

0

33

1

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

0

57

2

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

0

80

2

16 강의 메세지 retryCount의 의도

0

45

2

JPA Repository 질문이 있습니다!

1

56

2

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

1

48

1

UserService, CertificationService 책임 분리 기준 질문

0

37

1

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

0

64

1