#할일
- 회원가입이 후 로그인 페이지로 이동
- /member/login 으로 리다이렉트 진행
- 아이디 중복으로 실패시 다시 회원가입화면으로 돌아가게
회원가입 후에 이동하는 곳이 로그인페이지로 이동시키는 법
// 타임리프 문법(파라미터, ? 뒤에 입력된 매개변수들)
const params = /*[[ ${param} ]]*/ null;
if (params.msg) {
toastNotice(params.msg[0]);
}
if (params.errorMsg) {
toastWarning(params.errorMsg[0]);
}
return "redirect:/member/login?msg=" + Ut.url.encode("회원가입이완료되었습니다.\n 로그인 후 이용해주세요.");
@Getter
@Setter
@AllArgsConstructor
public class RsData<T> {
private String resultCode;
private String msg;
private T data;
public static <T> RsData<T> of(String resultCode, String msg, T data) {
return new RsData<>(resultCode, msg, data);
}
public static <T> RsData<T> of(String resultCode, String msg) {
return of(resultCode, msg, null);
}
public static <T> RsData<T> successOf(T data) {
return of("S-1", "성공", data);
}
public static <T> RsData<T> failOf(T data) {
return of("F-1", "실패", data);
}
public boolean isSuccess() {
return resultCode.startsWith("S-");
}
public boolean isFail() {
return isSuccess() == false;
}
}
아이디 중복으로 실패하는 경우 확인 방법.
RsData를 도입
//만약 존재한다면 이걸 반환
return RsData.of("F-1", "해당 아이디(%s)는 사용중입니다.".formatted(username));
//회원가입에 성공한다면 이걸 반환
return RsData.of("S-1", "회원가입이 완료되었습니다.", member);
memberController에서 만약 실패했다는 걸 받게된 경우
<script>
alert('해당 아이디(user1)는 이미 사용중입니다.');
history.back();
</script>