[개인공부][Spring] - @Service - 로그인, 로그아웃, 회원가입 기능 구현으로 이해하기

Mini_me·2022년 1월 17일
0

공부 [Spring]

목록 보기
12/27

✏️ 오늘 하루 배운 것

@service

  • 도메인 모델(데이터)와 컨트롤러 사이에 위치
  • 구현 방식
    • 인터페이스 + 클래스 : 정식 → 같은 기능을 하는 다양한 구현체를 작성할 니즈가 예상될 때 적합
    • 클래스 : 실무에서 즐겨 사용되는 형식
    • 컨트롤러 레이어와 결합도는 증가

실습 )
service 패키지에 domain에 따라 service 생성

회원가입 서비스 : 회원가입용 객체를 받아서 userService에 create 메소드를 위임

user가 생성이 되면 sesstionn에 유저 아이디 담아 리턴


( 비즈니스 로직 처리는 userService에서 처리하도록) 로그인 서비스에서의 회원가입 메소드에서 중복유저 메소드 담당은 userService의 create 메소드 담당


로그인의 경우, 로그인 객체(loginReq)를 받아서 패스워드가 맞는 유저를 찾아온다.

1. 세션의 값이 존재하는지 존재하지 않는지 확인
2. 1에따라 패스워드가 일치하는 유저의 유무 여부로 세션을 담거나 예외를 던진다.
→ 세션에 값이 있으면 리턴

  • 세션 중 어떤 종류의 세션이냐라는 식별 값인 로그인 세션 키를 이용하여 get으로 가져오게 되면 signup메소드에서 가져온 getId가 나온다.
  • 패스워드가 맞는 유저를 골라와( 이는 userService에서 담당)

  • null 값이 아니라면 로그인 세션 set
  • 없다면 패스워드 체크 후 로그인 후 세션에 담고 리턴한다.

로그아웃의 경우는 세션키 제거

0개의 댓글