본문 바로가기

웹 개발/Spring

[Spring] Entity 클래스와 JpaRepository

JPA를 개발에 사용하기 위해서는 두 가지 코드가 필요하다. 
  1. JPA를 통해서 관리하게 되는 객체를 위한 엔티티 클래스
  2. 엔티티 객체들을 처리하는 기능을 가진 Repository

 

실습
  • Entity 클래스 작성
@Getter
@ToString
@Entity
@Table(name = "user")
public class User {

    @Id
    private @Column(length = 100) String user_id; // 유저 고유번호
    @Setter @Column(nullable = false, length = 20) private String user_name; // 유저 닉네임
    @CreatedDate @Column(nullable = false) private LocalDateTime write_date; // 최초 입력일자
    @LastModifiedDate @Column(nullable = false) private LocalDateTime modify_date; // 수정일자

}

 

어노테이션 설명

 

@Entity

 : Spring Data JPA 에서 엔티티 클래스에는 반드시 @Entity 어노테이션을 추가해야 한다. 

  @Entity가 붙은 클래스의 인스턴스들이 JPA로 관리되는 객체라는 것을 의미

 

@Table

 : 데이터베이스상에서 엔티티 클래스를 어떠한 테이블로 생성할 것인지에 대한 정보를 담기위한 어노테이션.

  실제 테이블은 데이터베이스 명명규칙에 따라 소문자로 생성했지만, 클래스는 대문자로 시작하도록 작성하기 위해 Table 어노테이션을 붙여주었다.

 

@Id, @GeneratedValue

 : @Entity가 붙은 클래스는 PK에 해당하는 특정 필드를 @Id 로 지정

   자동 채번을 위해서는 @GeneratedValue를 사용.

 

@Column

 : 다양한 속성 지정 가능.

  nullable, name, length 등을 이용해서 데이터베이스의 컬럼에 필요한 정보 제공.

 

'웹 개발 > Spring' 카테고리의 다른 글

[Spring 실습] View 환경설정  (0) 2024.07.24
[Spring 실습] 프로젝트 생성  (0) 2024.07.24
[Spring] Spring Data JPA  (1) 2023.12.04
[Spring] JpaRepository 인터페이스  (0) 2023.07.09
[Spring] ORM과 JPA  (0) 2023.07.09