Closed jaeuk520 closed 4 months ago
ManytoMany를 지양해야한다는 알고 있었는데 이번기회에 한번 찾아봤네요. 가장 납득이 갈만한 주장은 ManytoMany를 사용할경우 JPA에서 쿼리를 예측하기 어렵다는 점과 조인테이블에 다른 컬럼을 추가할 수 없다는 주장이네요.
public class Course {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "c_id")
private Long courseId;
private String name;
private String region;
private String description;
private String imageUrl;
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "h_id")
private Health health;
}
Course 에서 @OneToMany 으로 CourseTravelComponent 를 리스트의 형태로 가지고 있어야하지 않나요? #4
@OneToMany(fetch = LAZY, mappedBy = "courseTravelComponent")
private List<CourseTravelComponent> courseTravelComponentList=new ArrayList<>();
이런식으로 추가되어야할 것 같네요
구현하다가 필요하면 추가하려고 했는데 미리 추가해둬도 상관없어요 😃
넵 기능 추가 할때 함께 추가하면 될거 같네요 😃
기존 방식
PK쌍
을 하나의PK
로 갖는 조인 테이블수정 요청 방식
다 대 다
관계를일 대 다
-다 대 일
관계로 분리할 테이블을 새로 생성합니다.PK
값과 Travel_Component 테이블의PK
만을 갖습니다.조인 테이블을 사용하게되면 JPA에서
ManyToMany
로 매핑해야하기 하는데 이를 지양하고자 하여 문제를 제기합니다.