Spring

JPA Enum 형태 관리방법-회원관리

Stater 2019. 11. 8. 09:00

회원관리를 enum의 형태로 사용하면 유용package com.example.study.model.enumclass;


import lombok.AllArgsConstructor;
import lombok.Getter;

//0.Enum클래스를 생성하고 ->
//1.엔티티에 status enum으로 변경-> String->Enum으로 변경
//@Enumerated(EnumType.STRING)
//private UserStatus status; //Jpa Enum 형태의 관리를 받을 수 있는 부분
//2.UserLogicService 에서 Status 상태 값을 바꾼걸로 수정한다.

@Getter
@AllArgsConstructor
public enum UserStatus {

//(인덱스값,인덱스값의 대한 상태 설명1,인덱스값의 대한 상태 설명2....)
REGISTERED(0,"등록","사용자 등록상태"),
UNREGISTERED(1,"해지","사용자 해지상태");

private Integer id;
private String title;
private String description;
}

 

0.Enum클래스를 생성하고 ->
1.엔티티에 status enum으로 변경-> String->Enum으로 변경
//@Enumerated(EnumType.STRING)
//private UserStatus status; //Jpa Enum 형태의 관리를 받을 수 있는 부분

@Enumerated(EnumType.STRING)
private UserStatus status; //Jpa Enum 형태의 관리를 받을 수 있는 부분
//1 REGISTERED / UNREGISTERED / WAITING

2. api request/response 수정

    private UserStatus status;

 

3.UserLogicService 에서 Status 상태 값을 바꾼걸로 수정한다.

 

4. lombok을 사용한 enum 클래스

package com.example.study.model.enumclass;


import lombok.AllArgsConstructor;
import lombok.Getter;

//0.Enum클래스를 생성하고 ->
//1.엔티티에 status를 enum으로 변경-> String->Enum으로 변경
//@Enumerated(EnumType.STRING)
//private UserStatus status; //Jpa Enum 형태의 관리를 받을 수 있는 부분
//2.UserLogicService 에서 Status 상태 값을 바꾼걸로 수정한다.

@Getter
@AllArgsConstructor
public enum UserStatus {

    //(인덱스값,인덱스값의 대한 상태 설명1,인덱스값의 대한 상태 설명2....)
    REGISTERED(0,"등록","사용자 등록상태"),
    UNREGISTERED(1,"해지","사용자 해지상태");

    private Integer id;
    private String title;
    private String description;
}

 

반응형

'Spring' 카테고리의 다른 글

Springboot 폴더구조  (0) 2019.11.10
Springboot 프로젝트 생성방법 ( Intellij )  (0) 2019.11.09
springboot Test 코드작성방법  (0) 2019.11.07
Repository  (0) 2019.11.06
Entity 엔티티  (0) 2019.11.05