728x90
객체와 테이블을 매핑하기 위해서는 @Entity를 클래스 위에 작성한다.
JPA 를 사용해서 테이블과 매핑할 클래스는 필수로 작성해주어야 한다.
@Entity가 붙은 클래스는 JPA가 관리, 엔티티라고 부른다.
@Entity
public class Member {
@Id
private Long id;
private String name;
주의할 점
1. 기본생성자는 필수
2 . final 클래스를 사용해서는 안된다 -> JPA 구현체들은 엔티티를 내부에서 다양한 방식으로 사용
@Entity 의 속성정리
name()
- JPA에서 사용할 엔티티 이름을 지정
- 기본값은 클래스의 이름을 그대로 사용
- 같은 클래스 이름이 없으면 가급적 기본값을 사용
@Entity(name = "MBR")
public class Member {
...
}
@Table : 엔티티와 매핑할 테이블을 지정
속성 | 기능 | 기본값 |
name | 매핑할 테이블 이름 | 엔티티 이름을 사용 |
catalog | 데이터베이스 catalog 매핑 | |
schema | 데이터베이스 schema 매핑 | |
uniqueConstraints(DDL) | DDL 생성 시에 유니크 제약 조건 생성 |
참고
https://www.inflearn.com/course/ORM-JPA-Basic/dashboard
https://www.inflearn.com/questions/164425
https://ttl-blog.tistory.com/112
728x90
'Spring > JPA' 카테고리의 다른 글
필드와 컬럼 매핑 (0) | 2022.09.20 |
---|---|
데이터베이스 스키마 자동 생성 (0) | 2022.09.20 |
영속성 컨텍스트 - 플러시 (0) | 2022.09.20 |
영속성 컨텍스트 - 변경 감지 (0) | 2022.09.20 |
영속성 컨텍스트 - 쓰기 지연 (0) | 2022.09.20 |
댓글