본문 바로가기
Spring Boot 개념 정리

@Embedded, @Embeddable 정리

by 반오십 코린이 2023. 1. 27.
728x90
Member class
package jpabook.jpashop.domain;


import lombok.Getter;
import lombok.Setter;

import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;

@Entity
@Getter @Setter
public class Member {

    @Id @GeneratedValue
    @Column(name = "member_id")
    private Long id;

    private String name;

    @Embedded
    private Address address;

    private List<Order> orders = new ArrayList<>();

}

@Embedded를 통해 address를 세분화한다라는 의미로 알면 될듯


 

Address class
package jpabook.jpashop.domain;

import lombok.Getter;

import javax.persistence.Embeddable;

@Embeddable
@Getter
public class Address {

    private String city;
    private String street;
    private String zipcode;
}

address를 city, street, zipcode 이렇게 3개로 세분화한다.

세분화하는 class의 경우 @Embeddable을 사용한다.

728x90