spring boot Filter过滤器的简单使用
生活随笔
收集整理的這篇文章主要介紹了
spring boot Filter过滤器的简单使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
springboot使用Filter過濾器有兩種方式:
一種是實現Filter接口然后通過@Component注解向項目加入過濾器
另一種是通過配置類來配置過濾器
?
@Component public class DemoFilter implements Filter {/*** 初始化* @param filterConfig* @throws ServletException*/@Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println("filter init");}/*** 處理邏輯** 過濾器只能拿到請求和響應 至于是請求哪個控制器,哪個方法,filter是不知道的** 如果需要知道請求的是哪個控制器和哪個方法的時候就需要用到攔截器了** @param servletRequest* @param servletResponse* @param filterChain* @throws IOException* @throws ServletException*/@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {System.out.println("filter start");filterChain.doFilter(servletRequest,servletResponse);System.out.println("filter finish");}/*** 銷毀方法*/@Overridepublic void destroy() {System.out.println("filter destroy");} }
另一種的實現需要把@Component注解去掉然后添加一個配置類WebConfig
/*** 通過配置類設置過濾器*/ @Configuration public class WebConfig {/*** 和直接使用@Component注解進行過濾不一樣的是它可以指定過濾的url* @return*/@Beanpublic FilterRegistrationBean demoFilter(){FilterRegistrationBean registrationBean = new FilterRegistrationBean();DemoFilter filter = new DemoFilter();registrationBean.setFilter(filter);List<String> urls = new ArrayList<>();//對所有的url進行過濾urls.add("/*");
registrationBean.setUrlPatterns(urls);return registrationBean;}}
?
轉載于:https://www.cnblogs.com/xiluonanfeng/p/10855543.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的spring boot Filter过滤器的简单使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python学习——把计算GC含量的代码
- 下一篇: .net core编写转发服务(三) 接