Entity_Mapping[객체와 테이블 매핑]
Entity Mapping
객체와 테이블 매핑
1
2
3
4
5
6
7
8
9
10
@Entity(name = "testUser")
@Table
public class testUser {
@Id
@Column(name = "id")
private Long id;
@Column(name = "user_name")
private String name;
}
@Entity가 붙은 클래스는 JPA가 관리하고, 엔티티라고 불립니다.
JPA를 사용해서 테이블과 매핑할 클래스는 @Entity가 필수입니다.
주의점
JPA가 엔티티를 생성할 때 기본 생성자를 사용하기 때문에 기본 생성자는 반드시 필수입니다.
JPA가 프록시를 생성하고, 상속과 관련된 기능을 사용하기 위해 기본적으로 클래스를 상속하기 때문에final클래스, enum, interface, inner 클래스는 사용하면 안됩니다.
저장할 필드에 final을 사용하면 안됩니다.
@Entity 속성
- name
- name
- 매핑할 테이블 이름을 지정합니다.
- catalog
- DB catalog를 매핑합니다.
- schema
- DB schema를 매핑합니다
- uniqueConstraints
- DDL 생성 시에 유니크 제약 조건을 생성합니다.
결론
JPA는 편리하게 많은 어노테이션을 제공하여 객체와 데이터베이스 간의 매핑을 쉽게 할 수 있게 도와줍니다.
그러나 이러한 어노테이션들을 사용할 때에는 주의해야 할 사항들이 있으며, 특히 기본 생성자, 클래스 및 필드의 제약사항, 어노테이션의 속성 등을 적절히 고려하여 사용해야 합니다.
This post is licensed under CC BY 4.0 by the author.