STS4
Legacy Project
JAVA 1.8
Oracle SQL
Tomcat9
Mybatis jdbc SqlSessionFactory 사용
** Gmail SMTP 설정을 모두 끝마쳤어야함.
1. 회원가입 페이지에서 이메일 인증 요청
사용자 액션: 회원가입 폼에서 이메일 입력 후 "인증 코드 발송" 버튼 클릭
데이터 흐름:
- signUpForm.jsp의 Ajax 요청
- MemberController의 requestEmailAuth()
- EmailService의 authCodeSendEmail()
- 랜덤 인증코드 생성(authCode())
- 이메일 발송(sendEmail())
- MemberService의 insertAuthCode()
- memberMapper.xml의 insertAuthCode 태그
- DB의 AUTHCODE 테이블에 저장
2. 사용자가 이메일에서 인증 코드 확인 후 입력
사용자 액션: 이메일 확인 후 회원가입 폼에 인증 코드 입력, "인증 확인" 버튼 클릭
데이터 흐름:
- signUpForm.jsp의 Ajax 요청
- MemberController의 checkAuthCode()
- EmailService의 checkAuthCode()
- MemberService의 getAuthCode()
- memberMapper.xml의 getAuthCode 태그
- DB에서 인증코드 조회 및 검증
- 인증 결과 반환
- 클라이언트에 성공/실패 응답
3. 인증 성공 후 회원가입 완료
사용자 액션: 나머지 회원정보 입력 후 "회원가입" 버튼 클릭
데이터 흐름:
- signUpForm.jsp의 폼 제출
- MemberController의 signUp()
- 사용자 입력 데이터 검증
- 인증코드 재확인(EmailService의 checkAuthCode())
- MemberService의 signUpAndSendAuthCode()
- MemberService의 signUp()
- memberMapper.xml의 signUp 태그
- DB에 회원정보 저장
- 회원가입 완료 응답 반환
'Programming > Java' 카테고리의 다른 글
[Spring] Gmail SMTP를 이용하여 이메일 인증 구현 - 이메일 발송 프로그램(2) (0) | 2025.03.21 |
---|---|
[Spring] Gmail SMTP를 이용하여 이메일 인증 구현 - 이메일 발송 프로그램(1) (0) | 2025.03.21 |
[Spring] Gmail SMTP를 이용하여 이메일 인증 구현 - 설정 (0) | 2025.03.21 |
[Error : Mybatis/jdbc] ORA-12541:접속할 수 없습니다. host (host name) port 1521에 리스너가 없습니다. (0) | 2025.03.15 |
[Error : Mybatis] typemissmatch 문서 루트 요소 "mapper"은(는) DOCTYPE 루트 "null"과(와) 일치해야 합니다. (0) | 2025.03.13 |