728x90
본 포스팅은 김영한 선생님의 자바 ORM 표준 JPA 프로그래밍 - 기본편를 듣고 배운 것을 정리하는 글입니다.
정확하게 JPA에 대해서 배우고 싶으시다면
https://www.inflearn.com/course/ORM-JPA-Basic/dashboard
자바 ORM 표준 JPA 프로그래밍 - 기본편 - 인프런 | 강의
JPA를 처음 접하거나, 실무에서 JPA를 사용하지만 기본 이론이 부족하신 분들이 JPA의 기본 이론을 탄탄하게 학습해서 초보자도 실무에서 자신있게 JPA를 사용할 수 있습니다., 본 강의는 자바 백엔
www.inflearn.com
위의 강의를 보시는 것을 추천드립니다.
@Entity
- @Entity가 붙은 클래스는 JPA가 관리
- JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수
매핑 어노테이션
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
package hellojpa;
import javax.persistence.*;
import java.util.Date;
@Entity
public class Member {
@Id
private Long id;
@Column(name = "name")
private String username;
private Integer age;
@Enumerated(EnumType.STRING)
private RoleType roleType;
@Temporal(TemporalType.TIMESTAMP)
private Date createdDate;
@Temporal(TemporalType.TIMESTAMP)
private Date lastModifiedDate;
@Lob
private String description;}
|
cs |
어노테이션 | 설명 |
@Column | 컬럼 매핑 name: 필드에 매핑할 테이블의 컬럼 이름 nullable ->not null 제약 unique ->unigue Key length ->문자 길이 제한 |
@Temporal | LocalDate, LocalDateTime 사용시 생략 가능 |
@Enumerated | EnumType.ORDINAL (기본값) - enum 안의 값이 아니라 순서값 저장 EnumType.STRING - enum 이름값이 저장 |
@Lob | BLOB, CLOB 타입 매핑 매핑하는 필드 타입이 문자면 CLOB 나머지는 BLOB |
@Transient | 필드 매핑x, 데이터베이스 저장,조회 x |
기본 키 매핑
기본 키 매핑 어노테이션
@Id ->primary Key
@GeneratedValue -> 자동생성
1
2
3
|
@Id @GeneratedValue
@Column(name = "MEMBER_ID")
private Long id;
|
cs |
728x90
'프로그래밍 언어 > Spring' 카테고리의 다른 글
<SpringBoot> LMS 프로젝트 9. Repository, service 계층 구현 및 테스트 (0) | 2021.12.13 |
---|---|
<Spring Boot> LMS 프로젝트8. JPA 엔티티 매핑 (0) | 2021.12.09 |
<JPA> JPA 1. 내부 동작 방식 영속성 (0) | 2021.11.18 |
<Spring> 스프링 핵심원리 - 기본편 후기 (0) | 2021.11.17 |
<Spring>LMS프로젝트7. 학생 출결 로직 작성(5) 컴포넌트스캔과 자동 의존관계 주입 (0) | 2021.11.08 |