JPA76 8 JPA 기본키 매핑 김영한님의 인프런 강의와 PDF를 바탕으로 정리하였습니다. https://www.inflearn.com/courses?s=%EA%B9%80%EC%98%81%ED%95%9C 기본키 매핑 어노테이션에는 @ID, @GerneratedValue 가 있습니다. 예를 들어 아래와 같이 사용합니다. 또한 기본키를 매핑하는 데에는 몇 가지 방법이 있습니다. - 직접 할당: @Id만 사용 - 자동 생성(@GeneratedValue) 1. IDENTITY: 데이터베이스에 위임, MYSQL 2. SEQUENCE: 데이터베이스 시퀀스 오브젝트 사용, ORACLE @SequenceGenerator 필요 3. TABLE: 키 생성용 테이블 사용, 모든 DB에서 사용 @TableGenerator 필요 4. AUTO: 방언에 따라 .. 2021. 7. 5. 7 JPA 필드와 칼럼 매핑 김영한님의 인프런 강의와 PDF를 바탕으로 정리하였습니다. https://www.inflearn.com/courses?s=%EA%B9%80%EC%98%81%ED%95%9C 아래와 같은 요구사항을 만족하는 모델을 설계해보겠습니다. 1. 회원은 일반 회원과 관리자로 구분해야 한다. 2. 회원 가입일과 수정일이 있어야한다. 3. 회원을 설명할 수 있는 필드가 있어야 한다. 이 필드는 길이 제한이 없다. 일단 위의 1번 요구사항을 위한 회원타입 enum을 만듭니다. 2번, 3번 요구사항을 위해 아래와 같이 필드를 추가하고, 객체와 테이블을 매핑을 해줘야 합니다. 매핑 어노테이션은 아래와 같이 몇가지가 있습니다. 이제 각각의 매핑 어노테이션을 하나씩 알아보겠습니다. 🔑 @Column @Column은 객체의 필드와.. 2021. 7. 4. 6 JPA 객체와 테이블 매핑, 데이터베이스 스키마 자동 생성 김영한님의 인프런 강의와 PDF를 바탕으로 정리하였습니다. https://www.inflearn.com/courses?s=%EA%B9%80%EC%98%81%ED%95%9C JPA 객체와 테이블 매핑 @Entity @Table 객체와 테이블 매핑을 위해서는 @Entity, @Table 어노테이션을 사용합니다. 위처럼 name 속성을 사용하여 @Entity에 사용하면 엔티티의 이름, @Table에 사용하면 매핑할 테이블의 이름이 됩니다. 디폴트는 현재 엔티티클래스의 이름인 Member로 됩니다. @Entity 가 붙은 클래스는 JPA가 관리하는 엔티티 클래스가 됩니다. 하여 JPA를 사용하여 테이블과 매핑시 해당 어노테이션은 필수입니다. 주의할 점은 1. 기본 생성자(파라미터 없는 생성자)가 있어야 하며, .. 2021. 7. 4. 5 JPA 준영속 상태 김영한님의 인프런 강의와 PDF를 바탕으로 정리하였습니다. https://www.inflearn.com/courses?s=%EA%B9%80%EC%98%81%ED%95%9C 영속화되는 상황은 두가지가 있습니다. 1. persist했을 때 2. find를 했는데 1차 캐시에 없어서 DB에서 가져온 후, 영속성 컨텍스트에 엔티티를 올려둔 경우 그렇다면 준영속 상태란? 영속 상태의 엔티티가 영속성 컨텍스트에서 분리(detached)되는 경우. 이렇게 되면 영속성 컨텍스트가 제공하는 기능을 사용할 수 없음(더티체킹, 지연 로딩 등등...) 준영속 상태로 만드려면 아래와 같이 하면 됩니다.(주석 참고) 준영속 상태로 만드는 3가지 방법 : em.detach(entity) : 특정 엔티티만 준영속 상태로 만들기 em.. 2021. 7. 3. 이전 1 ··· 15 16 17 18 19 다음