흰 스타렉스에서 내가 내리지

[JPA]일대일 식별 관계 본문

Spring

[JPA]일대일 식별 관계

주씨. 2023. 2. 15. 23:04
728x90

자식 테이블의 기본 키 값으로 부모 테이블의 기본 키 값만 사용한다.

@Entity
public class Board {
    @Id
    @GeneratedValue
    @Column(name = "BOARD_ID")
    private Long id;

    private String title;

    @OneToOne(mappedBy = "board")
    private BoardDetail boardDetail;
}

@Entity
public class BoardDetail {
    @Id
    private Long boardId;

    @MapsId //BoardDetail.boardId 매핑
    @OneToOne
    @JoinColumn(name = "BOARD_ID")
    private Board board;

    private String content;
}

 

일대일 식별 관계를 사용하는 코드를 보자

public void save(){
    Board board = new Board();
    board.setTitle("제목");
    em.persist(board);
    
    BoardDetail boardDetail = new BoardDetail();
    boardDetail.setContent("내용");
    boardDetail.setBoard(board);
    em.persist(boardDetail);
}