분류 전체보기 224

[Library Management System] 25.08.04 (17~19일) | (구현) 사용자 이메일 수정

[ 작업한 내용 ]1. UserController에서 @RequestMapping 수정- /api/v1/user 에서 /api/v1/user/me 로 수정.- 이메일 수정, 비밀번호 수정 api를 설계할 때 공통으로 /api/v1/user/me로 시작하기 위해서.2. 이메일 수정 기능 추가- UserController에서 /email api 설계.- UpdateEmailDTO를 생성하여 email만 단독으로 수정할 수 있도록 함.- UserController에서 UpdateEmailDTO와 @AuthenticationPrincipal 어노테이션을 통해 사용자 정보를 받아 username과 updateEmail을 UserSerivce로 전달.- UserService에서 파라미터로 받은 username와 u..

[Library Management System] 25.08.01 (16일) | (구현) 사용자 인증 정보

[ 작업한 내용 ]1. auth, user 디렉토리 분류 및 구분- 로그인, 로그아웃, 회원가입을 auth에서 관리하고 user에서는 사용자 정보를 불러오도록 디렉토리 분류함.2. AuthController 클래스에서 /me api 제거- UserController에서 관리하기 위해서. 3. 사용자 정보 가져오는 기능 추가- UserController 기본 api uri 시작은 /api/v1/user로 지정.- UserController에 사용자 인증 정보를 가져오는 api 기능 추가.- 정보를 가져오는 것은 Authentication.getPrincipal()을 사용.- UserInfoResponseDTO를 생성하여 username, email, joindate, lastlogindate를 가짐.- U..

[Library Management System] 25.07.31 (15일) | (구현) 사용자 인증

[ 작업한 내용 ]1. 사용자 인증 api 개발- AuthController에서 @GetMapping("me") api 작업.- Authenication.getPrincipla() 메서드를 사용해 생성한 User 객체에 대입 후 인증 정보가 없으면 예외를 던지고, 인증 정보가 있으면 로그인한 사용자의 username을 return.- User 엔티티에서 UserDetails 인터페이스 구현을 하기 때문에 관련 구현해야하는 getter 전체 구현.- 예외 발생과 인증 성공했을 때의 메시지 출력을 위해 messageProvider 사용하여 ErrorCode, SuccessCode 출력.- ErrorCode와 SuccessCode에 각각 관련 http status, code, message 추가.2. ApiR..

[Library Management System] 25.07.21~25.07.30 (5~14일) | (구현) 사용자 로그인, 로그아웃

[ 작업 한 내용 ]1. api 응답 객체 및 예외 처리 통일화- ApiResponse 클래스에 success, error 메서드 생성 후 관리- ErrorResponse 삭제- SuccessCode, ErrorCode를 enum으로 관리- messages.properties에 메시지 키 정의.- BaseException, GlobalExceptionHandler 코드 수정2. 로그인 기능 구현 (+JWT)- AuthController, AuthService에 로그인 기능 구현- 토큰 생성을 위해 JwtTokenProvider 생성- JWT 토큰 검증 및 유효성 검사를 위해 JwtAuthenticationFilter 생성- JWT 속성 관리를 위해 JwtProperties 생성.- JWT 속성에 따른 변..