일친 (IlChin) - 회원 로그인, 회원가입(3)

no.oneho·2025년 5월 30일
0

일친 개발기

목록 보기
8/17

이제 토큰 생성을 만들었으니 로그인 기능을 구현해보자

이번 포스팅은 UserService 쪽에 로그인 메서드를 만드는 간단한 작업이다

	@Transactional
    public LoginResp login(LoginReq login) {
        User user = userRepository.findByUsername(login.getUsername())
                .orElseThrow(()->new CustomException(UserException.BAD_REQUEST_LOGIN));

        if (!passwordEncoder.matches(login.getPassword(), user.getPassword())) {
            throw new CustomException(UserException.BAD_REQUEST_LOGIN);
        }

        String token = TokenProvider.createToken(user);
        return LoginResp.from(user, token);
    }

간단한 유효성 검사와 토큰 발급이 포함된 로그인 서비스 코드이다.
jpa나 쿼리사용, resp와 같은건 본인에 맞게 잘 응용해서 만들어서 사용하면 된다

이제 컨트롤러 코드를 만들어보자

@PostMapping("/login")
    public Response<LoginResp> login(@RequestBody LoginReq loginReq) {
        return Api.success(200, "success", userService.login(loginReq));
    }

여기도 별건 없다.

이제 토큰이 잘 발급되는지 실행해보면

어제 만들어둔 아이디와 비밀번호로 잘 로그인됨이 확인 되었다.

이제 다음 포스팅은 드디어 Spring security와 연동하는 부분이다.

profile
이렇게 짜면 요구사항이나 기획이 변경됐을 때 불편하지 않을까? 라는 생각부터 시작해 설계를 해나가는 개발자

0개의 댓글