@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
@Builder
@Entity(name = "comment")
public class CommentEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
@ManyToOne
@JsonIgnore
@ToString.Exclude
@JoinColumn(name = "board_id")
private BoardEntity boardEntity;
private String userName;
@Column(columnDefinition = "TEXT")
private String content;
private LocalDateTime commentAt;
private String status;
}
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
@Builder
@Entity(name = "board")
public class BoardEntity {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String userName;
private String title;
@Column(columnDefinition = "TEXT")
private String content;
private LocalDateTime boardAt;
private String status;
@OneToMany(mappedBy = "boardEntity")
@Where(clause = "status = 'REGISTERED'")
@org.hibernate.annotations.OrderBy(clause = "id desc")
private List<CommentEntity> commentList = List.of();
}
Jpa설정
public interface BoardRepository extends JpaRepository<BoardEntity, Long> {
}
public interface CommentRepository extends JpaRepository<CommentEntity, Long> {
}