엔티티 : Entity
데이터 베이스 테이블과 매칭이 되는 자바 클래스
데이터 수정 삭제 조회 할 수 없다.
질문(Question)
답변(Answer)
- 필요한 속성
1. 질문(Question)
속성이름 설명
- id 질문 데이터의 고유번호
- subject 질문 데이터의 제목
- content 질문 데이터의 내용
- createDate 질문 데이터의 작성일시
2. 답변(Answer)
속성이름 설명
- id 답변 데이터의 고유번호
- question 질문 데이터
-> 어떤 질문의 답변인지 알아야함
- content 답변 데이터의 내용
- createDate 답변 데이터의 작성일시
사용용도의 의미가 담긴 메서드를 사용하는 방법이있다
<aside> 👉 ex)
public class Post{
private Long id;
private String name;
public void update(Long id, String name){
this.id = id;
this.name = name;
}
}
post.update(1, “수정”);
</aside>
빌더 패턴 사용(생성자)
<aside> 👉 @Builder
public class Post{
private Long id;
private String name;
}
Post post = Post.builder().id(1).name(”수정”).build();
</aside>
추가
<aside>
👉 @NoArgsConstructor(access = AccessLevel.PROTECTED)
생성자의 접근제어자를 Protected 설정하여 무분별한 객체 생성을 방지 할 수 있다 .
</aside>
<aside> 👉 생성자를 private으로 선언하면 안되는 이유
private 접근제한자로 선언하게 된다면 JPA에서 오류를 발생시킨다. 이로 인해 JPA에서 프록시 객체를 만들어 해당 프록시 객체가 직접 만든 class 객체를 상속하기 때문에
public 이나 protected 까지만 허용이 된다
</aside>