Spring/JPA 14

JPA 강의 4 - 다양한 연관관계 매핑

출처 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 섹션 6. 다양한 연관관계 매핑 0. 다양한 연관관계 매핑 0 - 0. 연관관계 매핑시 고려사항 3가지 다중성 단방향 or 양방향 연관관계의 주인 0 - 1. 다중성 다대일 [N:1] : @ManyToOne 일대다 [1:N] : @OneToMany 일대일 [1:1] : @OneToOne 다대다 [N:M] : @ManyToMany (실무에서 쓰면 안 됨) 0 - 2. 단방향, 양방향 테이블 • 외래 키 하나로 양쪽 조인 가능 • 사실 방향이라는 개념이 없음 객체 • 참조용 필드가 있는 쪽으로만 참조 가능 • 한쪽만 참조하면 단방향 • 양쪽이 서로 참조하면 양방향 1. 다대일 [N:1] 1 - 1. 다대일 단방향 가장 많이 사용하는 연관관계 다대일의 반..

Spring/JPA 2022.12.19

JPA 강의 3 - 연관관계 매핑 기초

출처 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 섹션 5. 연관관계 매핑 기초 만드는 순서 : 테이블 설계 -> Entity(domain) 설계와 매핑 -> ... 회원 엔티티 코드 다시 보기 회원 리포지토리 개발 회원 서비스 개발 회원 기능 테스트 참고 : H2 Database 만들기 🚨 h2 DB 연결 에러 시 : 참고 // 초기 실행 jdbc:h2:~/이름 // 초기 실행 후 다음부터 접속 jdbc:h2:tcp://localhost/~/이름 0. 목표 객체와 테이블 연관관계의 차이를 이해 객체의 참조와 테이블의 외래 키를 매핑 용어 이해 방향(Direction): 단방향, 양방향 다중성(Multiplicity): 다대일(N:1), 일대다(1:N), 일대일(1:1), 다대다(N:M) 이해 연관..

Spring/JPA 2022.12.19

JPA 강의 2 - 엔티티 매핑

출처 : 자바 ORM 표준 JPA 프로그래밍 - 기본편 섹션 4. 엔티티 매핑 1. 객체와 테이블 매핑 1 - 1. @Entity @Entity가 붙은 클래스는 JPA가 관리, 엔티티라 함 JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수 🚨 주의 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) final 클래스, enum, interface, inner 클래스 사용X 저장할 필드에 final 사용 X 1 - 2 . @Entity 속성 속성: name JPA에서 사용할 엔티티 이름을 지정함 기본값: 클래스 이름을 그대로 사용(예: Member) 같은 클래스 이름이 없으면 가급적 기본값을 사용함 🚨 주의 final 클래스, enum, interface, inner..

Spring/JPA 2022.12.19

JPA 강의 1 - 영속성 관리, 영속성 컨텍스트란?

듣게 된 배경 섹션 0. 강좌 소개 자바 ORM 표준 JPA 프로그래밍 - 기본편 💡 계층 의존관계 controller : MVC의 컨트롤러가 모여 있는 곳. 컨트롤러는 서비스 계층을 호출하고, 결과를 뷰(JSP)에 전달함. service : 서비스 계층에는 비즈니스 로직이 있고 트랜잭션을 시작함. 서비스 계층은 데이터 접근 계층인 리포지토리를 호출함. repository : JPA를 직접 사용하는 계층. 여기서 엔티티 매니저를 사용해서 엔티티를 저장하고 조회함. domain : 엔티티가 모여 있는 계층, 모든 계층에서 사용 💡 개발 순서 서비스 & 리포지토리 개발(비즈니스 로직 수행) → 테스트 케이스 작성(검증) → 컨트롤러 & 뷰 Ex) 회원 엔티티 코드 다시 보기 회원 리포지토리 개발 회원 서비스..

Spring/JPA 2022.12.19