본문 바로가기

분류 전체보기53

스프링 인터셉터(Interceptor) 서블릿 필터와 스프링 인터셉터의 차이점 및 활용서블릿 필터와 스프링 인터셉터는 둘 다 웹 애플리케이션에서 공통 관심 사항을 처리하는데 사용되지만,적용되는 순서와 범위, 사용 방법에서 차이가 있습니다.또한 서블릿 필터가 서블릿이 제공하는 기술이라면, 스프링 인터셉터는 스프링 MVC가 제공하는 기술입니다.HTTP 요청 흐름HTTP 요청 -> WAS -> 필터 -> 서블릿(디스패처) -> 스프링 인터셉터 -> 핸들러(컨트롤러)필터는 서블릿 단계에서 적용되는 반면, 인터셉터는 스프링 MVC의 기능으로 서블릿 이후에 적용됩니다.필터가 먼저 요청을 가로채고, 적절하지 않다고 판단되면 서블릿을 호출하지 않습니다.인터셉터는 컨트롤러가 실행되기 전에 요청을 가로채며, 이후 단계를 진행할지 결정합니다. 인터셉터에서 적절하.. 2024. 9. 9.
서블릿 필터 (Filter) Spring Boot에서 필터(Filter) 활용하기Spring Boot 애플리케이션에서 HTTP 요청의 흐름은 다음과 같습니다:HTTP 요청 -> WAS -> 필터 -> 서블릿(디스패처) -> 인터셉터 -> 핸들러(컨트롤러)필터의 역할필터는 서블릿이 호출되기 전에 적용되며, 요청이 적절하지 않으면 서블릿을 호출하지 않을 수 있습니다.여러 개의 필터를 체인으로 구성할 수 있으며, 각 필터는 순차적으로 실행됩니다. 필터의 흐름은 다음과 같습니다:HTTP 요청 -> WAS -> 필터1 -> 필터2 -> ... -> 서블릿(디스패처) -> 인터셉터 -> 핸들러(컨트롤러) 필터 인터페이스를 보면public interface Filter { public default void init(FilterConfig fi.. 2024. 9. 9.
PatternMatchUtils(간단한 패턴 매치) 스프링이 제공하는 유용한 기능 중에 PatternMatchUtils라는 기능이 있습니다.여기서 simpleMatch(String[] patterns, String str)라는 메서드를 사용하면 첫번째 파라미터에 있는 패턴 중에 두번째 파라미터를 비교해서 간단하게 패턴 검사를 할 수 있습니다.패턴이 있다면 true 없다면 false를 반환합니다.아래 네가지 경우를 검사해줍니다.1. XXX : 완전 일치하는 경우2. XXX* : XXX로 시작하는 문자3. *XXX : XXX로 끝나는 문자4. *XXX* : XXX가 포함된 문자예를 들어서private static final String[] whitelist = {"/", "/members/add", "/login", "/logout", "/css/*"};위와.. 2024. 9. 9.
bean validation Spring Boot에서 Bean Validation을 활용한 검증Spring Boot로 개발할 때, 객체 필드 검증이 필요한 경우가 많습니다. 이때 사용하는 기술이 Bean Validation입니다. Bean Validation은 특정한 구현체가 아닌 **Bean Validation 2.0(JSR-380)**이라는 기술 표준으로, 검증을 위한 어노테이션과 여러 인터페이스의 모음입니다. 이 표준을 구현한 일반적인 구현체로는 Hibernate Validator가 많이 사용됩니다.간단하게 예시를 보겠습니다.위처럼 간단하게 어노테이션을 이용하여 검증을 할 수 있습니다.Hibernate Validator를 사용하면 위의 Range처럼 더욱 다양한 기능을 활용할 수 있습니다.다양한 어노테이션은Hibernate V.. 2024. 9. 7.
반응형