본문 바로가기

TIL

2022/02/06 TIL

인프런 JPA 기본편

값 타입 컬렉션

값 타입은 식별자가 없기 때문에 생명주기를 엔티티를 의존한다.
하지만 이렇게 되면 값을 수정할 때마다 존재하는 값을 전부 지우고 수정하는 데이터를 새로 만들게 돼서 성능이 떨어진다.
따라서 OneToMany로 사용하는 것이 좋고(값 타입을 엔티티로 승격), 만약 값 타입으로 사용해야 한다면 불변 객체로 사용하는 것이 좋다.


값 타입 만드는 법

@ElementCollection
@ColloectionTable(name = "ADDRESS", joinColumns = @JoinColumn(name = "MEMBER_ID"))
private List<Address> addressHistory = new ArrayList<>();

'TIL' 카테고리의 다른 글

2022/02/08 TIL  (0) 2022.02.08
2022/02/07 TIL  (0) 2022.02.08
2022/02/05 TIL  (0) 2022.02.05
2022/02/04 TIL (JAVA8)  (0) 2022.02.05
2022/02/03 TIL  (0) 2022.02.04