2024-06-12

This commit is contained in:
2024-06-12 13:11:58 +09:00
parent d2bb77ca33
commit a75a1dbd0f
31 changed files with 263 additions and 7 deletions

View File

@@ -0,0 +1,32 @@
# Modeling
## 어노태이션
* @Entity : 해당 클래스가 엔티티임을 명시합니다.
* @Table : 클래스의 이름과 테이블의 이름을 다르게 지정해야 할 경우에 사용합니다.
* name
* @Id : 테이블의 기본키를 지정합니다. 모든 엔티티는 @Id가 필요합니다.
* @GeneratedValue : 일반적으로 @Id와 함께 사용됩니다. 해당 필드의 값을 자동으로 생성하는 방식을 지정합니다.
* strategy
* @Column : 테이블의 칼럼으로 맵핑됩니다.
* name : 데이터베이스의 칼럼명을 지정합니다.
* unique : 고유키로 지정합니다.
* nullable : 널 처리 가능여부를 지정합니다.
* insertable
* updatable
* columnDefinition
* table
* length : 데이터의 최대 길이를 지정합니다.
* precision
* scale
* @Transient : 클래스에는 선언되어 있지만, 데이터베이스에는 필요 없는 경우에 지정합니다.
### GenerationType
* AUTO : 사용하는 데이터베이스에 맞게 자동으로 생성합니다.
* IDENTITY : AUTI_INCREMENT를 사용해서, 데이터베이스가 알아서 생성하도록 합니다.
* SEQUENCE : @SequenceGenerator로 지정된 식별자 생성기를 통해서 값을 주입받습니다.
* TABLE : @TableGenerator를 사용해서 별도의 테이블에 값을 저장합니다.