s00jin 님의 블로그

2. [로그인] 로그인 구현 전 설계하기 본문

프로젝트/하고 싶은거 다해보는 내 사이트

2. [로그인] 로그인 구현 전 설계하기

s00jin 2025. 6. 26. 12:18

로그인을 여러 방식으로 해보고 싶어 찾아보던 중

여러 방법의 로그인 구현이 담겨진 블로그를 찾아서 따라 해본다!!

 

https://chb2005.tistory.com/173

👆 블로그는 위 블로그를 참고했다.

 

위 블로그의 코드와 완전히 똑같지는 않다! 몇몇 코드는 나에게 맞게 수정했다.

좋은 블로그 같으니 로그인을 구현해보고 싶은 사람들은 따라해봐도 좋을 듯 하다 🙂


기능 구현 순서

아래 순서로 로그인 기능을 구현할 것이다.

  1. 쿠키 로그인
  2. 세션 로그인
  3. 스프링 시큐리티 로그인
  4. 간편 로그인

기본적인 로그인 방식

  1. 중복 아이디 불가
  2. 중복 닉네임 불가
  3. 비밀번호 확인 있음
  4. 로그인 안하면 로그인 페이지로 유도

구현

모든 로그인 방법에 사용될 기본적인 구현들이다.

  1. 회원가입
    1. 중복 아이디 검사
    2. 중복 비밀번호 검사
    3. 비밀번호 + 비밀번호 확인 검사
    4. db 저장
  2. 로그인
    1. 일치하는 아이디 찾기
    2. 아이디 + 비밀번호 맞는지 확인

코드는 쿠키 로그인에서 한번에 올리겠다 🥷


기본적인 구조

User Entity

id Long (pk)
loginId String
password String
nickname String
role UserRole

 

UserRole - enum

User Admin

 

JoinRequest - dto

loginId  
passwordCheck  
nickname  
   
toEntity() builder()
password  

 

LoginRequest - dto

loginId  
password