Spring Boot的filter(过滤器)简单使用实例详解
过滤器(Filter)的注册方法和Servlet一样,有两种方式:代码注册或者注解注册
1.代码注册方式
通过代码方式注入过滤器
@Bean publicFilterRegistrationBeanindexFilterRegistration(){ FilterRegistrationBeanregistration=newFilterRegistrationBean(newIndexFilter()); registration.addUrlPatterns("/"); returnregistration; }
IndexFilter.Java类:
packagecom.example.filter; importjava.io.IOException; importjavax.servlet.Filter; importjavax.servlet.FilterChain; importjavax.servlet.FilterConfig; importjavax.servlet.ServletException; importjavax.servlet.ServletRequest; importjavax.servlet.ServletResponse; publicclassIndexFilterimplementsFilter{ @Override publicvoiddestroy(){ System.out.println("filterdestroymethod"); } @Override publicvoiddoFilter(ServletRequestarg0,ServletResponsearg1,FilterChainarg2) throwsIOException,ServletException{ System.out.println("filterdoFiltermethod"); } @Override publicvoidinit(FilterConfigarg0)throwsServletException{ System.out.println("filterinitmethod"); } }
2.注解方式
通过注解方式注入过滤器
IndexFilter2.java类
packagecom.example.filter; importjava.io.IOException; importjavax.servlet.Filter; importjavax.servlet.FilterChain; importjavax.servlet.FilterConfig; importjavax.servlet.ServletException; importjavax.servlet.ServletRequest; importjavax.servlet.ServletResponse; importjavax.servlet.annotation.WebFilter; @WebFilter(urlPatterns="/*",filterName="indexFilter2") publicclassIndexFilter2implementsFilter{ @Override publicvoiddestroy(){ System.out.println("filter2destroymethod"); } @Override publicvoiddoFilter(ServletRequestarg0,ServletResponsearg1,FilterChainarg2) throwsIOException,ServletException{ System.out.println("filter2doFiltermethod"); } @Override publicvoidinit(FilterConfigarg0)throwsServletException{ System.out.println("filter2initmethod"); } }
把注解加到入口处启动即可
@SpringBootApplication @ServletComponentScan publicclassSpringBootSimpleApplication{ publicstaticvoidmain(String[]args){ SpringApplication.run(SpringBootSimpleApplication.class,args); } }
以上所述是小编给大家介绍的SpringBoot的filter(过滤器)简单使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!