카테고리 없음

머니톡 개발일지 1주차 구현내용 정리

책다니엘 2025. 4. 4. 19:59

✨ 회원가입 / 로그인 기능 구현 정리

깃허브 링크: https://github.com/DoHyunDaniel/moneytalk

✅ 구현 목표

  • Spring Security + JWT 기반 인증 시스템 구현
  • 회원가입 / 로그인 / 사용자 정보 관리 기능 제공
  • Swagger 문서 자동화
  • 공통 예외 처리 적용

📌 주요 기능 요약

1. 회원가입 (SignUp)

  • POST /api/users/signup
  • 요청: email, password, nickname
  • 응답: id, email, nickname
  • 유효성 검사 및 이메일 중복 방지
  • 비밀번호 BCrypt로 암호화 저장

2. 로그인 (Login)

  • POST /api/users/login
  • 요청: email, password
  • 응답: accessToken, refreshToken
  • JWT 토큰 발급 후 인증 처리

3. 내 정보 관련 API


기능 메서드 URL 설명
내 정보 조회 GET /api/users/me 로그인한 사용자 정보 반환
닉네임 변경 PATCH /api/users/me 닉네임 수정
회원 탈퇴 DELETE /api/users/me 사용자 삭제 처리

4. 예외 처리

  • GlobalExceptionHandler로 전역 에러 핸들링
  • 공통 응답 포맷: ErrorResponse
  • Swagger 문서에 에러 응답 예시 포함

5. Swagger 연동

  • springdoc-openapi 사용 (v2.1.0)
  • bearerAuth 스키마 등록
  • 보안 인증이 필요한 API에 @SecurityRequirement 적용
  • 예외 응답 예시까지 명세 가능

🔮 향후 개발 계획

✅ 이메일 인증 기능

  • 회원가입 후 인증 메일 전송
  • 이메일 인증 여부 확인 및 만료 시간 설정
  • 인증 링크 클릭 시 사용자 활성화 처리

✅ 소셜 로그인 연동

  • Google / Kakao / Naver OAuth 2.0 연동
  • 인증된 사용자 정보를 바탕으로 회원가입 or 로그인 처리
  • OAuth2UserService 커스터마이징 예정

🛠 기술 스택

  • Spring Boot 3.4.4
  • Spring Security
  • JWT (jjwt 0.11.5)
  • MySQL / JPA
  • Spring Validation
  • Swagger (springdoc-openapi 2.1.0)