본문 바로가기

공부/Jpa

04. 엔티티 매핑 4. 엔티티 매핑 JPA를 사용하는 데 가장 중용한 일은 엔티티와 테이블을 정확히 매핑하는 것 객체와 테이블 매핑 : @Entity, @Table 기본 키 매핑 : @Id 필드와 컬럼 매핑 : @Column 연관관계 매핑 : @ManyToOne, @JoinColumn 1. @Entity JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 어노테이션을 필수로 붙여야함 @Entity가 붙는 클래스는 JPA가 관리하는 것으로, 엔티티라 부름 속성 정리 속성 기능 기본값 name JPA 에서 사용할 엔티티 이름을 지정함 설정하지 않으면 클래스 이름을 그대로 사용함 주의사항 기본 생성자는 필수 final 클래스, enum, interface, inner 클래스에는 사용할 수 없음 저장할 필드에 final을 ..
03. 영속성 관리 영속성 관리 2. 영속성 컨텍스트 영속성 컨텍스트(persistence context) : 엔티티를 영구 저장하는 환경 엔티티 매니저로 엔티티를 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리함 em.persist(member); // 단순히 회원 엔티티를 저장한다고 표현했지만, 정확히는 엔티티 매니저를 사용해서 회원 엔티티를 영속성 컨텍스트에 저장함 영속성 컨텍스트는 엔티티 매니저를 생성할 때 하나 만들어지고, 엔티티 매니저를 통해서 영속성 컨텍스트에 접근할 수 있고, 관리 되어짐 3. 엔티티의 생명주기 엔티티는 4가지 상태가 존재함 비영속(new/transient) : 영속성 컨텍스트와 전혀 관계가 없는 상태 영속(managed) : 영속성 컨텍스트에 저장된 상태 준영속(..
01. Jpa 란? JPA 학습 JPA 란? JPA(Java Persistence API)는 자바 진영의 ORM 기술 표준 자바 애플리케이션 JPA JDBC API DB ORM 이란 ? ORM(Object-Relational Mapping) : 객체와 관계형 데이터베이스를 매핑한다는 뜻 객체와 테이블을 매핑해서 패러다임의 불일치 문제를 개발자 대신 해결해줌 종류 : 하이버네이트 etc.. TIP 수정 기능 JPA는 별도의 수정 메소드를 제공하지 않음 객체를 조회해서 값을 변경만 하면 트랜잭션을 커밋할 때 데이터베이스에 적정한 UPDATE SQL이 전달됨