배경
- 한 사람이 여러 게시글을 작성할 수 있으며, 한 게시글은 한 사람에 의해 작성된다.
- 한 게시글은 여러 댓글을 가질 수 있으며, 한 댓글은 한 게시글에 속한다.
- 한 사람이 여러 댓글을 작성할 수 있으며, 한 댓글은 한 사람에 의해 작성된다.
작성자 / 게시글 / 댓글의 관계
- 작성자 --- 게시글 => 1 : N (일대다)
- 게시글 --- 댓글 => 1 : N (일대다)
- 작성자 --- 댓글 => 1 : N (일대다)
@ManyToOne
- 1 : N 관계에서 N쪽 클래스에 @ManyToOne을 갖는 속성 지정
Board
@Entity
public class Board {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String title;
private String content;
@ManyToOne
private Writer writer; // 작성자
}
Reply
@Entity
public class Reply {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String content;
@ManyToOne
private Writer writer; // 작성자
@ManyToOne
private Board board; // 게시글
}
Writer
@Entity
public class Writer {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String userName;
}