创建一个类,实现Filter接口,实现doFilter()方法
在该类使用注解 @WebFilter ,设置 filterName 与 urlPatterns
在doFilter中编写代码
编写启动类:增加注解 @ServletComponentScan
/** * SpringBoot整合Filter 方式一 */ //@WebFilter(filterName="FirstFilter" , urlPatterns= {"*.do","*.jsp"}) @WebFilter(filterName="FirstFilter" , urlPatterns= "/first") public class FirstFilter implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { System.out.println("进入Filter"); chain.doFilter(request, response); System.out.println("离开Filter"); } } @SpringBootApplication @ServletComponentScan public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } }
urlPatterns 是数组类型的,可以拦截多个 例如:urlPatterns= {" .do",".jsp"}
/** * 注册Filter */ @Bean public FilterRegistrationBean getFilterRegistrationBean() { FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter()); //bean.addUrlPatterns(new String[] {"*.do","*.jsp"}); bean.addUrlPatterns("/second"); return bean; }
原文链接:https://www.cnblogs.com/net-safe/p/13528110.html