설계를 실제 코딩하자.
실무에서는 가급적 Getter는 열어두고 Setter는 꼭 필요한 경우만 사용하는 것을 추천한다.
@Entity
@Getter @Setter
public class Member {
@Id @GeneratedValue
@Column(name = "member_id")
private Long id;
private String name;
private Address address;
private List<Order> orders = new ArrayList<>();
}
인텔리j 엔터프라이즈 기능
cmd + ;
위에 + 누르고 JPA 추가 후 오른쪽 하단 Provider Hibernate로 설정
enum은 꼭 @Enumerated 를 주자.
@Entity
@Getter @Setter
public class Delivery {
@Id @GeneratedValue
@Column(name = "delivery_id")
private Long id;
private Order order;
@Embedded
private Address address;
@Enumerated(EnumType.STRING)
private DeliveryStatus status;
}