@Id 2

[JPA] 기본 키 매핑 어노테이션 @Id / @GeneratedValue [IDENTITY, SEQUENCE, TABLE, AUTO]

@Id - 내가 직접 셋팅해주는 직접 할당 @GeneratedValue - IDENTITY : 데이터베이스에 위임, MYSQL @Id//pk가 무엇인지 알려줌 @GeneratedValue(strategy=GenerationType.IDENTITY) private String id; -> MYSQL의 autoincrement와 같이 DB가 알아서 값을 넣어주는 자동 생성 방법 Member member = new Member(); //member.setId("ID_A"); member.setUsername("Hi"); em.persist(member); id 값은 자동할당하기로 하였기 때문에 값을 안주고 실행하게되면 MySQL 방언에 따라 아래와 같이 auto_increment로 생성된다. 순차적으로 id ..

JPA 2021.07.06

[JPA] @Entity / @Table 매핑 어노테이션 정리

@Entity - @Entity가 붙은 클래스는 JPA가 관리한다. - JPA를 사용해서 테이블과 매핑할 클래스는 @Entity가 필수 - 기본 생성자 필수!! JPA 스펙상 규정이 되어있다고 해요 :) - final 클래스, enum, interface, inner 클래스는 @Entity 를 이용해서 사용할 수 없음 - 저장할 필드에 final 사용할 수 없음 @Entity 속성 1. @Entity(name="Member") - JPA가 내부적으로 구분하는 이름 - 설정을 따로 안하면 기본값으로 클래스 이름을 그대로 사용한다. - 같은 클래스 이름이 없으면 가급적으로 기본값을 사용한다. @Table - 엔티티와 매핑할 테이블 지정 1. @Table(name="MBR") - MBR 테이블로 처리된다. -..

JPA 2021.07.01