Skip to content

Latest commit

 

History

History
19 lines (15 loc) · 1.14 KB

File metadata and controls

19 lines (15 loc) · 1.14 KB

(JPA 경험자 한정) JPA 의 @Entity 란 뭔가요? 도메인 객체와 Entity 객체를 각각 어떻게 정의하시겠습니까?

@Entity


  • JPA에서 엔티티는 DB의 테이블에 대응하는 클래스
  • @Entity가 붙어있는경우 JPA가 관리 -> 데이터베이스와 연동하기 위해서는 꼭 붙여줘야한다.
  • Table 이름을 직접 규명하며 연결이 가능하기도하며, public 혹은 protected인 기본생성자(@NoArgsConstructor)가 필수로 되어 있어야한다.
  • 저장 속성은 final로 두면 안된다.

정의 방법

  • 도메인 객체 : 개발 설계를 진행하면서 생성되는 객체들을 일컷는다.(ERD, Class 다이아그램 등)
  • 즉, 도메인 객체는 Entity를 포함한다.
  • Entity 객체는 ERD와 연결되어 있다. 즉 데이터 베이스의 테이블에 1대1로 매칭 되어있다고 생각하면 편하다.
  • Entity는 꼭 식별자를 가지게 하여 같은 모양의 엔티티여도 다른 객체임을 구분 시켜주어야한다.

참고

@Entity : https://ttl-blog.tistory.com/112

도메인 객체 vs 엔티티 객체 : https://multifrontgarden.tistory.com/186