일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 스프링 핵심 기능
- jpa
- JDBC
- 스프링 핵심 원리
- Android
- pointcut
- QueryDSL
- java
- Exception
- AOP
- springdatajpa
- db
- 알고리즘
- Proxy
- 그리디
- Spring Boot
- Greedy
- kotlin
- http
- Thymeleaf
- SpringBoot
- 자바
- 백준
- 김영한
- Servlet
- 인프런
- transaction
- spring
- JPQL
- 스프링
- Today
- Total
목록@OneToMany (4)
개발자되기 프로젝트
1. 일대다 단방향 매핑. "일"이 연관관계 주인.? 이 모델은 권장하진 않음.. 표준에서 지원하긴 함. Team에서 Member를 참조하나 Member는 Team을 참조하지 않음.. 하지만 DB입장에서 FK는 MEMBER("다")에 있음 즉, Team의 members를 변경했을 때, MEMBER 테이블의 TEAM_ID(FK)를 변경해야함. -> 다른 테이블의 FK를 업데이트를 해야함.. 2. TEST @Entity public class Team { @Id @GeneratedValue @Column(name = "TEAM_ID") private Long id; private String name; @OneToMany @JoinColumn(name = "TEAM_ID") private List membe..
1. 연관관계 매핑 시 고려사항 3가지 다중성 : 데이터베이스의 다중성기준으로 생각 다대일 : @ManyToOne ->제일 많이 씀 일대다 : @OneToMany 일대일 : @OneToOne 다대다 : @ManyToMany -> 쓰지마! 멈춰! ->일대다, 다대일로 풀어서 사용. 단방향, 양방향 테이블 - 외래 키 하나로 양쪽 조인 가능 - 방향이라는 개념이 없음 ㅋㅋㅋ 객체 - 참조용 필드가 있는 쪽으로만 참조 가능. - 한쪽만 참조하면 단방향 - 양쪽이 서로 참조하면 양방향. 연관관계 주인 테이블은 외래 키 하나로 두 테이블이 연관관계 맺음 객체 양방향 관계는 A->B, B->A 처럼 참조 두개 객체 양방향 관계는 참조가 2군데 있음. 둘 중 테이블의 외래키를 관리할 곳 지정 필요 연과관계 주인 : ..
1. Movie와 Comment 연관관계 추가 1개의 movie에는 여러 개의 comment가 달릴 수 있다. 따라서 1:N관계이다. @OneToMany(fetch = FetchType.LAZY) @JoinColumn(name = "movie_id") @ToString.Exclude private List comments; 1:N 연관관계는 아래 글 참고. 1 : N 연관관계 - 1 이전에 만들어둔 User entity와 User History는 1:N연관관계를 갖는다. User는 현재 회원정보를 가지고 있는 테이블이고 UserHistory는 특정 user id에 저장된 값이 변경된 내역을 저장하는 table이다. 1. test @.. bsh-developer.tistory.com 2. addCommen..
다른 entiry에 대해서도 연관관계를 맺어주자. 1. Book 1) Book : Review = 1 : N --> @OneToMany -->중간 table 만들지 않기 위해 @JoinColumn필수 @JoinColumn(name = "book_id") --> name = "one_PK", 현재 class의 PK를 many의 FK로. List reviews = new ArraryList(); --> Null Point Exception방지를 위해 생성. 2) Book : Publisher = N : 1 --> @ManyToOne @Entity @NoArgsConstructor @Data @EntityListeners(value = AuditingEntityListener.class) @ToString(c..