Spring

Entity 엔티티

Stater 2019. 11. 5. 09:00

Entity 

- JPA에서는 테이블을 자동으로 생성해주는 기능 제공

DB Table == JPA Entity

 

JPA의 주요 Annotation과 용도 설명

Annotation 용도
@Entity 해당 class가 entity임을 명시
@Table 실제 DB테이블의 이름을 명시
@Id Index primary key를 명시
@Column 실제 DB Column의 이름을 명시
@GeneratedValue Primary key 식별키의 전략 설정
package com.example.study.model.entity;

//클래스의 이름과 디비 컬럼의 이름이 동일하게 만든다.
//User(카멜)=user

import lombok.AllArgsConstructor;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.time.LocalDateTime;

@Data
@AllArgsConstructor
@Entity //==db table
//클래스와 디비컬럼명이 동일하지 않은 경우 table을 써서 name을 지정해서 사용한다.
//@Table(name="user")
public class User {
    //식별자
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    //프로퍼티와 디비컬럼명이 동일하지 않은 경우 table을 써서 name을 지정해서 사용한다.
    //@Column(name="account")
    private String account;
    private String email;
    //디비에는 phone_number이지만 스네이크 방식으로 인해 자동으로 jpa에서 인식해준다.
    private String phoneNumber;
    private LocalDateTime createdAt;
    private String createdBy;
    private LocalDateTime updatedAt;
    private String updatedBy;

}

 

반응형

'Spring' 카테고리의 다른 글

springboot Test 코드작성방법  (0) 2019.11.07
Repository  (0) 2019.11.06
Naming Convention(네이밍컨벤션)  (0) 2019.11.04
Spring boot jdbc 설정  (0) 2019.11.03
JPA(Java PErsistent API)  (0) 2019.11.02