본문 바로가기

전체 글86

5장 연관관계 매핑 기초 https://github.com/MoochiPark/jpa/edit/master/chapter05/README.md 을참고 하며 필요한 것을 추가로 기입하였습니다. Chapter 05. 연관관계 매핑 기초 대부분의 엔티티는 다른 엔티티와 연관관계가 있다. 예를 들어 주문 엔티티는 어떤 상품을 주문했는지 알기 위해 상품 엔티티와 연관관계가 있고 상품 엔티티는 카테고리, 재고 등 또 다른 엔티티와 관계가 있다. 그런데 객체는 참조주소를 사용해서 관계를 맺고 테이블은 외래 키를 사용해서 관계를 맺는다. 이 둘은 완전히 다르므로 객체 관계 매핑ORM에서 가장 어려운 부분이 바로 객체 연관관계와 테이블 연관관계를 매핑하는 것이다. 객체의 참조와 테이블의 외래 키를 매핑하는 것이 이 장의 목표이다. 시작하기 전에.. 2024. 2. 5.
4장 엔티티 매핑 https://github.com/MoochiPark/jpa의 깃을 참고하였습니다. Chapter 04. 엔티티 매핑 JPA를 사용하는 데 가장 중요한 일은 엔티티와 테이블을 정확히 매핑하는 것이다. 따라서 매핑 애노테이션을 숙지하고 사용해야 한다. JPA는 다양한 매핑 애노테이션을 지원하는데 크게 4가지로 분류할 수 있다. 객체와 테이블 매핑: @Entity, @Table 기본 키 매핑: @Id 필드와 컬럼 매핑: @Column 연관관계 매핑: @ManyToOne, @JoinColumn 먼저 객체와 테이블 매핑 애노테이션부터 알아보자. 4.1 @Entity JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 애노테이션을 필수로 붙여야 한다. @Entity가 붙은 클래스는 JPA가 관리하는 것으로,.. 2024. 1. 30.
3장 영속성 관리 3장 영속성 관리 JPA가 제공하는 기능은 크게 엔티티와 테이블을 매핑하는 설계 부분 매핑한 엔티티를 실제 사용하는 부분으로 나눌 수 잇다. 매핑한 엔티티를 엔티티 매니저(Entity Manager)을 통해 어떻게 사용하는지 알아보자 엔티티 매니저는 엔티티를 저장하고, 수정하고, 삭제하고, 조회하는 등 엔티티와 관련된 모든 일을 처리한다. 엔티티 매니저는 엔티티를 관리하는 관리자다. 엔티티 매니저는 엔티티를 저장하는 가상의 데이터베이스로 생각하면 된다. 참고로 내용중에 구현과 관련된 부분들은 하이버네이트를 기준으로 이야기한다. 3.1 엔티티 매니저 팩토리와 엔티티 매니저 엔티티 매니저 팩토리 데이터 베이스를 하나만 사용하는 애플리 케이션은 이반적으로 EntityManager Factory를 하나만 생성한.. 2024. 1. 23.
2장 JPA 시작 2장 JPA 시작 *.gradle 파일 plugins { id 'java' } group = 'org.example' version = '1.0-SNAPSHOT' repositories { mavenCentral() } dependencies { testImplementation platform('org.junit:junit-bom:5.9.1') testImplementation 'org.junit.jupiter:junit-jupiter' // JPA, 하이버네이트 // hibernate-core.jar, hibernate-jpa-2.1-api.jar 라이브러리도 함께 내려받는다. implementation 'org.hibernate:hibernate-entitymanager:4.3.10.Final' /.. 2024. 1. 20.