목차
- Dummy 데이터 입력
- null 데이터 처리하기
- 어노테이션 사용 (@DynamicInsert)
- Enum 사용
- Enum 추가 설명
1. Dummy 데이터 입력
- DAO 역할을 할 인터페이스 생성
- 기능(회원가입)을 수행하는 클래스에 의존성 주입 (DI)
- postman에 데이터 입력
- MySQL에 데이터가 넘어왔는지 확인
- 'id, createDate' 은 데이터를 입력하지 않아도 자동으로 데이터가 채워진다 (auto-increment, @CreationTimestamp 때문에)
- role은 @ColumnDefault 라서 null이 들어감 (**처리 방법은 하단에 설명)
2. null 데이터 처리하기
1) 어노테이션 사용 (@DynamicInsert)
- null 이 아닌 Object 데이터를 입력하기 위해 User 클래스에 @DynamicInsert 어노테이션 사용
- 오류, 실수를 일으킬 가능성이 있다
2) Enum 사용
- Enum 생성
- Enum으로 넣을 데이터 입력
- setRole에 넣을 Enum 데이터 입력
- role 변수 타입을 Enum으로 변경 / @Enumerated 어노테이션 사용
- Enum 데이터 정상 입력 확인
** Enum : 데이터의 도메인을 만들 때 사용 (도메인 : 범위) / 입력할 데이터를 강제한다
3) Enum 추가 설명
- Enum 클래스(RoleType)에 회원의 포지션을 정의(USER, ADMIN)
- User 클래스의 role 변수에 @Enumerated 어노테이션을 사용
- 어노테이션을 통해 Enum 클래스에 정의한 String만 사용 가능
- 회원가입시 setRole의 매개변수로 Enum에 정의한 String 중 하나를 설정하여 입력
- String에 입력한 값이 DB에 저장됨
'SpringBoot > JPA' 카테고리의 다른 글
[STS] 페이지 처리 (paging, @PageableDefault, Pageable) (0) | 2024.03.09 |
---|---|
[STS] 회원정보 불러오기 (@PathVariable이란?) (1) | 2024.03.07 |
[STS] 테이블 생성하기 (Blog 테이블, yml 설정) (0) | 2024.03.06 |
[STS] yml 설정하기 (0) | 2024.03.06 |
[STS] Lombok 사용하기 (Maven 이란??) (0) | 2024.03.05 |