@Entity(name = "items")
public class Item() {
@Id @GeneratedValue
private Long id;
protected Item() {
}
}
@Entity가 적용된 클래스는 다음과 같은 주의사항을 지켜야 한다.
- 기본 생성자가 있어야 한다.
- final 클래스, enum, interface에서는 사용할 수 없다.
- 저장할 필드에 final을 사용하면 안 된다.
@Entity의 속성
- name : 엔터티의 이름을 정의한다. 설정하지 않으면 Class 이름을 그대로 사용한다.
JPA가 엔티티 객체를 사용할 때 기본 생성자를 사용한다.
생성자가 없으면 자바가 기본 생성자를 만들어준다.
단. 임의의 생성자가 존재하면 기본 생성자를 만들어주지 않는다. 이 때는 기본 생성자를 만들어주지 않으므로 직접 만들어야 한다.