반응형
데이터베이스 스키마 자동 생성
- hibernate.hbm2ddl.auto
- create: 기존테이블 삭제 후 다시 생성 (DROP + CREATE)
- create-drop: create와 같으나 종료시점에 테이블 DROP
- update: 변경분만 반영(운영DB에는 사용하면 안됨)
- validate: 엔티티와 테이블이 정상 매핑되었는지만 확인
- none: 사용하지 않음
- hibernate.hbm2ddl.auto
- create: 기존테이블 삭제 후 다시 생성 (DROP + CREATE)
- create-drop: create와 같으나 종료시점에 테이블 DROP
- update: 변경분만 반영(운영DB에는 사용하면 안됨)
- validate: 엔티티와 테이블이 정상 매핑되었는지만 확인
- none: 사용하지 않음
매핑 어노테이션
- @Column
- name: 필드와 매핑할 테이블의 컬럼 이름
- insertable, updatable: 읽기 전용
- nullable: null 허용여부 결정, DDL 생성시 사용
- unique: 유니크 제약 조건, DDL 생성시 사용
- columnDefinition, length, precision, scale (DDL)
- @Temporal
날짜 타입 매핑- @Temporal(TemporalType.DATE) 시간
- @Temporal(TemporalType.TIMESTAMP) 날짜와 시간
- @Enumerated
- 열거형 매핑
- EnumType.ORDINAL: 순서를 저장(기본값)
- EnumType.STRING: 열거형 이름을 그대로 저장 (권장)
- @Lob
- CLOB, BLOB 매핑
- CLOB : String, char[], java.sql.CLOB
- BLOB : byte[], java.sql.BLOB
- @Lob private String lobString;
- @Lob private byte[] lobByte;
- @Transient
- 매핑에서 제외
- @Column
- name: 필드와 매핑할 테이블의 컬럼 이름
- insertable, updatable: 읽기 전용
- nullable: null 허용여부 결정, DDL 생성시 사용
- unique: 유니크 제약 조건, DDL 생성시 사용
- columnDefinition, length, precision, scale (DDL)
- @Temporal
날짜 타입 매핑- @Temporal(TemporalType.DATE) 시간
- @Temporal(TemporalType.TIMESTAMP) 날짜와 시간
- @Enumerated
- 열거형 매핑
- EnumType.ORDINAL: 순서를 저장(기본값)
- EnumType.STRING: 열거형 이름을 그대로 저장 (권장)
- @Lob
- CLOB, BLOB 매핑
- CLOB : String, char[], java.sql.CLOB
- BLOB : byte[], java.sql.BLOB
- @Lob private String lobString;
- @Lob private byte[] lobByte;
- @Transient
- 매핑에서 제외
상속 관계 매핑 어노테이션
- @Inheritance
- @DiscriminatorColumn
- @DiscriminatorValue
- @MappedSuperclass(매핑 속성만 상속)
- @Inheritance
- @DiscriminatorColumn
- @DiscriminatorValue
- @MappedSuperclass(매핑 속성만 상속)
복합키 어노테이션
- @IdClass
- @EmbeddedId
- @Embeddable
- @MapsId
- @IdClass
- @EmbeddedId
- @Embeddable
- @MapsId
반응형
'Devlopment > Spring' 카테고리의 다른 글
Spring Security custom expression (0) | 2017.02.01 |
---|---|
Spring Security 관련 레퍼런스 정리 (0) | 2017.02.01 |
Jackson에서 null string 안 보이게 설정 (1) | 2016.08.12 |
JPA Hibernate 사용 중 ORA-00001: 무결성 제약 조건( ORA-00001 에러 (0) | 2016.06.07 |
Spring에서 기본적인 component-scan 설정 (0) | 2016.05.23 |
Spring에서 Pageable, Valid 설정 유의 설정 (0) | 2016.05.23 |
QueryDSL (0) | 2016.05.17 |
Hibernate Dialect (ORA-00933 Pagable error) (0) | 2016.05.17 |
SpringBoot application.properties H2 DB설정 (0) | 2016.02.12 |
SpringBoot에서 H2 DB 관리자 UI 접속하기 (0) | 2015.09.22 |