JPA 기초 - 기본키 매핑(@Id, @GeneratedValue)
·
카테고리 없음
본 내용은 유튜브 나무소리님의 강의 내용을 정리한 내용입니다. JPA 3-2강 Entity Mapping(2) @Access JPA에서 객체에 대한 접근방식은 크게 필드 접근방법과 프로퍼티 접근방법으로 구분합니다. @Access를 적용하지 않을 경우 @Id 어노테이션의 지정 위치에 따라 접근 방법을 결정할 수 있습니다. @Access 어노테이션을 선언해서 명시적으로 접근 방법을 설정할 수 있습니다. @Access 어노테이션으로 필드/속성 접근 방법을 동시에 사용할 수도 있습니다. // 프로퍼티 접근방법 @Entity public class Category { protected Long id; protected String name; protected Date modificationDate; protect..
JPA 기초 - 객체와 테이블 매핑
·
카테고리 없음
본 내용은 유튜브 나무소리님의 강의 내용을 정리한 내용입니다. JPA 3-1강 Entity Mapping(1) @Entity 도메인 객체를 관계형 데이터베이스 테이블로 맵핑할 때 @Entity 어노테이션을 사용합니다. @Entity 어노테이션만 선언했을 때 테이블 이름은 클래스 이름이 되고 대/소문자 치환은 일어나지 않습니다. 대부분 RDBMS는 대/소문자를 가리지 않으므로 기본 JPA 작명규칙이 문제를 발생하지는 않습니다. @Table 어노테이션을 사용해서 테이블 이름을 명시적으로 표기할 수 있습니다. 주의사항 빈 생성자(default constructor)가 있어야합니다. final 필드를 적용하지 않습니다. (JPA에서 객체에 데이터를 담을 때 setter를 이용) @Entity public cla..
JPA 기초 - 엔티티의 생명주기
·
카테고리 없음
본 내용은 유튜브 나무소리님의 강의 내용을 정리한 내용입니다. JPA 2-3강 영속성 컨텍스트의 이해(2) 엔티티의 생명주기(Entity Lifecycle) 영속 객체의 상태는 다음 4가지의 상태로 구분합니다. 비영속(New) : 영속성 컨텍스트로 관리되기 이전 순수 객체 상태. 영속(Managed) : 영속성 컨텍스트로 등록되고 관리되는 상태. (1차 캐시에 저장된 상태) 준영속(Detached) : 영속성 컨텍스트의 관리에 있다가 분리된 상태(Managed -> Detached) 삭제(Removed) : 영속 데이터의 삭제를 위한 상태(EntityManager.remove()) 이미지 출처: 3.3 엔티티의 생명주기 · jpa (gitbooks.io) ... public class CustomerJp..
JPA 기초 - 영속성 컨텍스트의 이해
·
카테고리 없음
본 내용은 유튜브 나무소리님의 강의 내용을 정리한 내용입니다. JPA 2-2강 영속성 컨텍스트의 이해(1) 엔티티 등록, 조회 동작 방식 영속성 컨텍스트는 EntityManager 단위로 관리 됩니다. EntityManager.persist()를 통한 영속객체 등록은 우선 해당 객체가 1차 캐시에 저장되고 일반적으로 트랜잭션이 커밋되는 시점에 Insert 쿼리가 데이터베이스에 반영됩니다. EntityManager.find()를 통한 데이터 검색은 우선 1차 캐시를 통해 해당 객체를 검색하고 없을 경우 Select 쿼리를 통해 데이터베이스에서 검색을 수행합니다. 이미지 출처: 3.4 영속성 컨텍스트의 특징 · jpa (gitbooks.io) 엔티티 수정 동작 방식 영속성 컨텍스트를 통해 관리되는 영속 객체..