이 학습 자료는 김영한님의 인프런 강의를 참고해서 만들었습니다. 1. 엔티티 매핑의 종류 객체와 테이블 매핑 : @Entitiy, @Table 필드와 컬럼 매핑 : @Column 기본 키 매핑 : @Id 연관관계 매핑 : @ManyToOne, @JoinColum 2. 객체와 테이블 매핑 2.1 @Entity JPA가 관리하는 클래스로, 엔티티라고 부른다. 테이블과 매핑할 클래스는 필수로 붙여준다. 주의사항 기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자) final, enum, interface, inner클래스 사용 X name 엔티티 이름을 지정 기본값 : 클래스 이름 가급적 기본값 사용(중복된 클래스 이름이 있을때만 변경) 2.2 @Table 엔티티와 매핑할 테이블(데이..
JPA
이 학습 자료는 김영한님의 인프런 강의를 참고해서 만들었습니다. 1. 엔티티 매니저 팩토리와 엔티티 매니저 고객 요청이 오면 엔티티 매니저 팩토리가 엔티티 매니저를 생산하여 DB에 접근하게 한다. 2. 영속성 컨텍스트란? 엔티티를 영구 저장하는 환경을 의미 → 엔티티 매니저를 통해서 영속성 컨택스트에 접근할 수 있음 EntityManager.persist(entity); 논리적인 개념 3. 엔티티의 생명주기 비영속(new/transient) : 영속성 컨텍스트와 전혀 관계가 없는 새로운 상태 영속(merged) : 영속성 컨텍스트에의해 관리되는 상태 em.persist() DB에 저장된 상태를 의미하는 것이 아니며, 커밋을 해야 DB에 저장된다. 준영속(detached) : 영속성 컨텍스트에 저장되어있다..
이 학습 자료는 김영한님의 인프런 강의를 참고해서 만들었습니다. JPA란? Java Persistence API의 약자로 자바 진영의 ORM 기술 표준을 의미한다. EJB → 하이버네이트(오픈 소스) → JPA 순으로 발전 함(자바 표준). ORM Object-relational mapping(객체 관계 매핑) 객체는 객체대로, 관계형 데이터베이스는 관계형 데이터베이스로 각각 설계하여 ORM 프레임워크가 중간에서 서로 매핑해준다. JPA 동작방식 애플리케이션과 JDBC 사이에서 동작한다. 1.저장 2.조회 'JPA와 객체의 패러다임의 불일치 해결'이란? 개발자가 할 일을 획기적으로 줄여줌. 신뢰도를 높여줌 JPA와 CRUD 저장 : jpa.persist(member) 조회 : Member member =..