@Entity
객체와 테이블 매핑
<aside>
💡 @Entity가 붙은 클래스는 JPA가 관리하는 클래스로, 해당 클래스를 엔티티라고 한다.
JPA를 사용해서 테이블과 매핑할 클래스는 반드시 @Entity 를 붙여야 한다.
</aside>
주의사항
- 기본 생성자 필수
- 파라미터가 없는 public 또는 protected 생성자가 필요하다.
- JPA spec으로 규정되어 있다.
Why? JPA를 구현해서 쓰는 라이브러리들이 다양한 기술(Ex. Reflection)을 사용해서 객체를
프록싱할 때 필요하기 때문.
- final 클래스, enum, interface, inner 클래스는 엔티티로 사용할 수 없다.
- DB에 저장하고 싶은 필드에는 final을 사용할 수 없다.
속성
@Table
객체와 테이블 매핑
<aside>
💡 @Table은 엔티티와 매핑할 테이블을 지정하는 것이다.
</aside>
속성