개인 코드 분석

▶  jwt.TokenProvider 클래스더보기@Slf4j@Componentpublic class TokenProvider implements InitializingBean { private static final String AUTHORITIES_KEY = "auth"; private final String secret; private final long accessTokenValidityInMilliseconds; private final long refreshTokenValidityInMilliseconds; private Key key; @Autowired private RefreshTokenRepository refreshTokenRepository; ..
▶ SecurityConfig 클래스@Configuration@EnableWebSecurity@RequiredArgsConstructorpublic class SecurityConfig { private final TokenProvider tokenProvider; private final JwtAuthenticationEntryPoint jwtAuthenticationEntryPoint; private final JwtAccessDeniedHandler jwtAccessDeniedHandler; ...}@Configuration: Spring에 이 클래스가 애플리케이션의 설정을 정의하는 클래스임을 알린다. Spring 컨테이너가 이 클래스를 스캔하여 Bean을 생성한다.@Enabl..
▶ JwtSecurityConfig 클래스더보기@RequiredArgsConstructorpublic class JwtSecurityConfig extends SecurityConfigurerAdapter { private final TokenProvider tokenProvider; @Override public void configure(HttpSecurity http) { http.addFilterBefore( new JwtFilter(tokenProvider), UsernamePasswordAuthenticationFilter.class ); }}▷ JwtSecurityConfig 클래스 해..
▶ JwtFilter 클래스@Slf4j@RequiredArgsConstructorpublic class JwtFilter extends GenericFilterBean { public static final String AUTHORIZATION_HEADER = "Authorization"; private final TokenProvider tokenProvider; ...}@Slf4j: Lombok의 어노테이션으로, log 객체를 자동으로 생성한다. 이 객체는 로깅을 위해 사용된다. 코드 내에서 로깅을 통해 디버깅이나 오류 메시지를 기록할 수 있다.@RequiredArgsConstructor: Lombok의 어노테이션으로, final로 선언된 필드를 포함하는 생성자를 자동으로 생성한다. ..
▶ JwtAuthenticationEntryPoint 클래스@Componentpublic class JwtAuthenticationEntryPoint implements AuthenticationEntryPoint { @Override public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException { response.sendError(HttpServletResponse.SC_UNAUTHORIZED); }}@Com..
▶ JwtAccessDeniedHandler 클래스@Componentpublic class JwtAccessDeniedHandler implements AccessDeniedHandler { @Override public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException accessDeniedException) throws IOException { response.sendError(HttpServletResponse.SC_FORBIDDEN); }}@Component: 이 어노테이션은 Spring에 이 클래스를 Bean으로 등록하도록 알려준다. Spring..
▶ GlobalExceptionHandler 클래스@ControllerAdvicepublic class GlobalExceptionHandler { @ExceptionHandler(Exception.class) public ResponseEntity handleException(Exception e) { return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); }}@ControllerAdvice: 이 어노테이션은 전역 예외 처리기를 정의하는 데 사용된다. 애플리케이션의 모든 컨트롤러에서 발생하는 예외를 이 클래스에서 공통으로 처리할 수 있다. 이를 통해 예외 처리 코드를 여러 컨트롤..
▶ UserController 클래스더보기@RestController@RequiredArgsConstructor@RequestMapping("/api")public class UserController { private final UserService userService; private HandlerMethodArgumentResolver xxx; private RequestParamMethodArgumentResolver uyyy; private DispatcherServlet dps; ... }▷ UserController 클래스 분석@RestController@RequiredArgsConstructor@RequestMapping("/api")@RestControll..
GLaDiDos
'개인 코드 분석' 카테고리의 글 목록