728x90
반응형
1:N의 관계를 갖는 A.class와 B.class가 있는 경우,
@OneToMany(fetct=FetchType.LAZY, mappedBy = "...", casecade = CascadeType.PERSIST)
private List<B> Bs;
CascadeType.PERSIST를 하면, A 타입만 JPA를 통해 영속성 객체로 불러오더라도, B 타입도 영속성 객체로 함께 불려오게 된다. 이것 때문에 엄청 오래 삽질을 했다...
정확한 원리는 아직 모르겠지만, 둘 다 영속성 객체로 걸려있으면 실제 SQL로 CRUD 시에 서로의 값을 참조하면서 무조건 넣어주어야 하는 것 같다. 링크 내용을 읽고 향후 JPA 개념이 생기면 정확하게 이해하자!
참조
[1] [jpa] CascadeType.PERSIST를 함부로 사용하면 안되는 이유
728x90
반응형
'Programming-[Backend] > JPA' 카테고리의 다른 글
[JPA기본] 3. 영속성 컨텍스트 - JPA 내부 동작 방식 (0) | 2021.09.26 |
---|---|
[JPA기본] 2. 프로젝트 생성, JPA 기본 CRUD 및 트랜잭션 (0) | 2021.09.25 |
[JPA기본] 1. JPA 필요성 : 객체와 RDB의 패러다임 불일치 (0) | 2021.09.24 |
[링크] @Transient 어노테이션 의미, 사용 시 유의사항 (0) | 2021.09.11 |
[TIL] Querydsl cannot find symbol 에러 (0) | 2021.06.21 |