티스토리 뷰

반응형

JPA(Java Persistence Api)의 필요성

객체지향으로 만든 객체를 

관계형 데이터베이스에 저장하는 작업(쿼리문)

이 번거롭기때문에

이 작업을 손쉽게 해주는 JPA를 사용한다

 

 

테이블은 외래 키로 조인을 사용해서 연관된 테이블을 찾는다

객체는 참조를 사용해서 연관된 객체를 찾는다

테이블과 객체 사이에는 이런 큰 간격이 있다

그래서 도메인 만들때

Member 클래스안에 Team에 대한 연관관계를 넣고싶으면

private Long teamid; 가 아닌

private Team team; 객체로 선언한다

 

 

 

 

 

 

 

 

양방향 연관관계에서 객체와 테이블의 차이점

객체는 Team team, List members 두개가 있다

단방향관계가 두개이다

 

테이블은 TEAM_ID 하나로 TEAM에서 MEMBER의 정보, MEMBER에서 TEAM의 정보도 얻을 수 있다

양방향관계가 하나이다

 

 

다대일 양방향 연관관계에서

FK의 주인은 다에서 가진다

 

연관관계의 주인만이 외래 키를 관리(등록, 수정)

주인이 아닌쪽은 읽기만 가능

주인은 mappedBy 속성 사용X 

주인이 아니면 mappedBy 속성으로 주인 지정

 

 

 

다대일 양방향을 사용하자

 

 

@ManyToOne @OneToOne은 기본이 즉시 로딩 -> LAZY로 설정하자

반응형

'개념 > 스프링 부트' 카테고리의 다른 글

스프링 핵심 원리 기본편-2  (0) 2023.01.02
스프링 핵심 원리 기본편-1  (0) 2023.01.02
인텔리제이 깃허브 연동  (0) 2022.07.18
도메인 모델과 테이블 설계  (0) 2022.07.01
스프링 부트 동작 환경  (0) 2022.06.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
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
29 30 31
글 보관함