이전에 멤버에 대한 구상을 해둔 상태이다. 이에 맞는 멤버를 만들어보아야 겠다.
@Entity
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class Member extends BaseEntity {
@Column(name = "MEMBER_USERNAME")
private String username;
@Column(name = "MEMBER_NICKNAME")
private String nickname;
@Column(name = "MEMBER_EMAIL")
private String email;
@Column(name = "MEMBER_PASSWORD")
private String password;
@Column(name = "MEMBER_ROLE")
@Enumerated(value = EnumType.STRING)
private Role role;
}
extends BaseEntity를 통해 기본적으로 가지는 id, createDate, lastModifiedDate는 이미 만든 상태에서 이를 참조시켰다.
이 상태에서 프로젝트를 실행시켜, 데이터베이스에 테이블이 제대로 생성되었는지 보았다.

이후에, 모든 요청에 대해 생각을 해보고, 이에 대한 DTO를 만든 후, DTO를 이용한 메서드들을 생각해 만들어야 한다.
회원가입에 대한 DTO
@AllArgsConstructor
@Data
public class RegisterRequestDto {
@NotNull(message = "")
private String username;
@NotNull(message = "")
private String nickname;
@NotNull(message = "")
private String email;
@NotNull(message = "")
private String password;
@NotNull(message = "")
private String passwordCheck;
}
닉네임 변경 DTO
@AllArgsConstructor
@Data
public class ChangeNicknameRequestDto {
private String newNickname;
}
이메일 변경 DTO
@AllArgsConstructor
@Data
public class ChangeEmailRequestDto {
private String newEmail;
}
비밀번호 변경 DTO
@AllArgsConstructor
@Data
public class ChangePasswordRequestDto {
private String newPassword;
private String newPasswordCheck;
}
이제 이를 이용한 테스트 코드를 만들고, 메서드를 만들며 기능을 만들어가야겠다.
'스프링 공부 > 게시판 프로젝트 만들기' 카테고리의 다른 글
[스프링] 15. Member 테스트대로 코드 짜보기 (0) | 2023.01.17 |
---|---|
[스프링] 14. Member에 대한 테스트 만들기 (0) | 2023.01.11 |
[스프링] 12. Member 엔티티에 대해 생각해보기 (0) | 2023.01.11 |
[스프링] 11. BaseEntity를 만들어보자. (0) | 2023.01.09 |
[스프링] 10. JWT를 구현하기. 찐막: 필터만들기와 SecurityConfiguration에 JWT 추가하기 (0) | 2023.01.09 |