기존에는 @GeneratedValue 어노테이션을 ID값에 달아줘서 DB에 auto_increment 설정을 해줘서 Long값으로 설정을 해주었다. 하지만 최근에는 UUID를 이용하는 것이 유행한다고 해서 바꿔주기로 했다.
먼저 Id의 데이터 타입을 String으로 받아준다. 그 후에 Builder에서 설정하는 ID값이 없다면 UUID를 담고 있게 했다.
UUID는 JAVA에서 UUID를 생성해주는 라이브러리를 이용해 전달한다. 그래서 UUID.randomUUID()를 호출한 후 String값으로 캐스팅해주면 된다.
@Builder
public User (String id, String name, String loginId, String loginPw, SchoolCategory schoolCategory, LocalDateTime regDate) {
if (id == null || id.isEmpty()) id = String.valueOf(UUID.randomUUID());
this.id = id;
this.name = name;
this.loginId = loginId;
this.loginPw = loginPw;
this.schoolCategory = schoolCategory;
this.regDate = regDate;
}
'개발일지_development diary > YSit' 카테고리의 다른 글
YSit [18] - 서버 to 서버 통신하기 (0) | 2023.01.23 |
---|---|
YSit [16] - Controller에서 Json 데이터 전송 & MockMvc 이용하여 Controller Test (0) | 2023.01.12 |
YSit [15] - 우분투에서 Spring (Gradle) 연동하기 & Access denied 오류 해결 (0) | 2023.01.06 |
YSit [14] - 관리자 페이지 구현 & 권한 구현하기 (0) | 2022.12.31 |
YSit [13] - 댓글 기능 구현하기 (2) | 2022.12.30 |