SpringBoot学习之路:09.Spring Boot中添加Filter应用

     上篇文章中说了SpringBoot中是如何使用servlet的,本文将讲解在SpringBoot中对过滤器Filter的实现

一.编写MyFilter实现Filter接口

package com.maxbill.core.webbox.filter;

import org.apache.log4j.Logger;

import javax.servlet.*; import javax.servlet.annotation.WebFilter; import java.io.IOException;

/** * @功能 自定义过滤器 * @作者 zuoshuai(MaxBill) * @日期 2017/7/6 * @时间 15:18 * @备注 MyFilter */ public class MyFilter implements Filter {

1Logger log = Logger.getLogger(MyFilter.class); 2 3@Override 4public void init(FilterConfig config) throws ServletException { 5 log.info(">>>>>>>>>过滤器初始化>>>>>>>>>"); 6} 7 8@Override 9public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

  throws IOException, ServletException { log.info(">>>>>>>>>执行过滤操作>>>>>>>>>"); chain.doFilter(request, response); }

1@Override 2public void destroy() { 3 log.info(">>>>>>>>>过滤器销毁>>>>>>>>>"); 4}

}

二.增加注解

1.过滤器增加@WebFilter注解,使能够被扫描到

@WebFilter(filterName = "myFilter", urlPatterns = "/*") public class MyFilter implements Filter {

1Logger log = Logger.getLogger(MyFilter.class); 2 3@Override 4public void init(FilterConfig config) throws ServletException { 5 log.info(">>>>>>>>>过滤器初始化>>>>>>>>>"); 6} 7 8@Override 9public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

  throws IOException, ServletException { log.info(">>>>>>>>>执行过滤操作>>>>>>>>>"); chain.doFilter(request, response); }

1@Override 2public void destroy() { 3 log.info(">>>>>>>>>过滤器销毁>>>>>>>>>"); 4}

}

2.启动类增加@ServletComponentScan注解,扫描项目中的filter

package com.maxbill;

import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.servlet.ServletComponentScan;

@ServletComponentScan @SpringBootApplication public class MaxbillApplication {

1public static void main(String\[\] args) { 2 SpringApplication.run(MaxbillApplication.class, args); 3}

}

启动项目测试:

INFO com.maxbill.core.webbox.filter.MyFilter:23 - >>>>>>>>>过滤器初始化>>>>>>>>>

INFO com.maxbill.core.webbox.filter.MyFilter:29 - >>>>>>>>>执行过滤操作>>>>>>>>>

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Eclipse搭建springboot项目(八)拦截器、过滤器、监听器

知识点:1、SpringBoot2.x过滤器Filter和使用Servlet3.0配置自定义Filter(核心知识)  filter简单理解:人检票员(filter)景点  1)SpringBoot启动默认加载的Filter    characterEncodingFilter    

Java Web 学习笔记

过滤器Filter功能:1、用来拦截传入的请求和传出的相应。2、修改或以某种方式处理正在客户端和服务端之间交换的数据流。如何使用?与使用Servlet类似,Filter是JavaWeb提供的一个借口,开发者只需要自定义一个类并且实现该接口即可packagecom.janeroad.filter;