本文主要是介绍Java web项目注册过滤器的两种方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这篇文章分享一下Java web项目中注册过滤器的两种方式,经常用的是第二种,第一种应该很少人用过吧~
第一步:创建管理器
import javax.servlet.*;
import java.io.IOException;/*** @author heyunlin* @version 1.0*/
public class GlobalFilter implements Filter {@Overridepublic void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {// todo:自己的过滤器处理逻辑chain.doFilter(req, resp);}}
第二步:注册管理器
方法一:通过注解配置扫描路径
在配置类上使用@ServletComponentScan注解配置过滤器所在的包。
import org.springframework.boot.web.servlet.ServletComponentScan;@ServletComponentScan("过滤器所在的包名")
方法二:通过配置类
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;/*** @author heyunlin* @version 1.0*/
@Configuration
public class FilterConfig {@Beanpublic FilterRegistrationBean<GlobalFilter> customHeaderFilter() {FilterRegistrationBean<GlobalFilter> registrationBean = new FilterRegistrationBean<>();registrationBean.setFilter(new GlobalFilter ());// 设置过滤器处理的路径registrationBean.setUrlPatterns("/user/selectByUsername","/permission/resources","/permission/selectPermissions","/permission/selectUserPermissions","/permission/selectAnonymityPermissions");registrationBean.setName("headerFilter");registrationBean.setOrder(1);return registrationBean;}}
这篇关于Java web项目注册过滤器的两种方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!