본문 바로가기
Spring/SpringBoot

[goormedu 강의] 스프링부트 블로그 만들기 04 - 02 회원가입을 위한 enum 사용법

by 코딩맛 2024. 8. 13.
해당 글은 groomedu의 스프링부트 나만의 블로그 만들기 강의를 보고 개인적으로 정리한 글입니다.


User 객체의 role은 Default value가 user.

 

repository에서 데이터를 insert 시킬 때 role을 쿼리에 넣으면 null로 들어가기 때문에 

role을 쿼리에서 뺄 수 있는 방법을 찾아야 함.

=> @DynamicInsert 사용 : insert 할 때 null인 필드 제외

 

@Enumerated(EnumType.STRING)
private RoleType role;

 

RoleType이라는 enum 타입의 object를 하나 생성하고 그 안에 값 정의

User 객체에서 private RoleType role; 선언하는데

DB에는 RoleType이 없으므로 String이라는 표시를 해줘야 하므로

@Enumerated(EnumType.STRING)을 붙여줌.

 

결론 

Enum을 사용하면 내가 넣은 값을 강제할 수 있음.