spring boot filter配置方式
spring boot 加载外部filter方式
- spring boot filter两种配置方式
- 1、自定义filter配置
- 2、加载外部jar包配置
spring boot filter两种配置方式
1、自定义filter配置
spring mvc方式filter的配置方式就不用多说了,下面说一下spring boot的方式,由于springboot没有web.xml所以需要新增filter的配置类。下面是一个自定义的filter,实现了每次调用Controller打印自定义的filter的调用时长
import org.springframework.stereotype.Component;import javax.servlet.*;
import java.io.IOException;/*** <br>* 标题: 自定义filter <br>* 描述: <br>** @author shenxiangwei* @time 2019/8/28 5:29 下午*/
@Component
public class TestMyFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {System.out.println("我的过滤器初始化");}@Overridepublic void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {Long startTime = System.currentTimeMillis();System.out.println("过滤器开始执行,时间"+System.currentTimeMillis());filterChain.doFilter(servletRequest,servletResponse);Long finishTime = System.currentTimeMillis();System.out.println("过滤器耗时"+(finishTime-startTime));}@Overridepublic void destroy() {System.out.println("我的过滤器销毁");}
}
只需如上配置便实现了自定义的filter
2、加载外部jar包配置
我们可能会需要外部jar包的filter,把上面的作为jar包依赖到项目中,需要去掉@Component注解,同时在项目中假如配置类,如下:
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;import java.util.ArrayList;
import java.util.List;/*** <br>* 标题: TestMyFilterConfig <br>* 描述: <br>** @author shenxiangwei* @time 2019/8/28 6:17 下午*/
@Configuration
public class TestMyFilterConfig {@Beanpublic FilterRegistrationBean timeFilter(){//创建 过滤器注册beanFilterRegistrationBean registrationBean = new FilterRegistrationBean();TestMyFilter testMyFilter = new TestMyFilter();registrationBean.setFilter(testMyFilter);List urls = new ArrayList();//给所有请求加过滤器urls.add("/*");//设置 有效urlregistrationBean.setUrlPatterns(urls);return registrationBean;}
}
参考:https://www.jianshu.com/p/3960fd97a294?utm_source=oschina-app
spring boot filter配置方式相关推荐
- Spring Boot概述与入门特点配置方式注入方式yim配置文件与多文件配置Spring Boot自动配置原理lombok应用
1. Spring Boot概述 Spring Boot是Spring项目中的一个子工程,与我们所熟知的Spring-framework 同属于spring的产品: 首页Spring Boot简介可以 ...
- Spring Boot自动配置原理
要了解Spring Boot的自动配置首先我需要先了解Spring Boot的两个机制,一个是配置文件如何进入到系统变成属性,二是如何将这些属性加入到容器中. 首先我们需要有一个组件,这个组件中的属性 ...
- Spring Boot自动配置原理分析
一.写在前面 随着时间的迁移Spring Boot 越来越多的出现在Java 后端程序员的视野中,Spring Boot 之所以会那么流行,很大的一个原因是自身集成了很多的Bean,简化了传统Srin ...
- Spring Boot 自动配置的 “魔法” 是如何实现的?
转载自 Spring Boot 自动配置的 "魔法" 是如何实现的? Spring Boot是Spring旗下众多的子项目之一,其理念是约定优于配置,它通过实现了自动配置(大多数 ...
- 【Spring Boot实战】源码解析Spring Boot自动配置原理
一.简介 Spring致力于让Java开发更简单,SpringBoot致力于让使用Spring进行Java开发更简单,SpringCloud致力于基于SpringBoot构建微服务生态圈,让微服务开发 ...
- Spring Boot 属性配置和使用
spring Boot 允许通过外部配置让你在不同的环境使用同一应用程序的代码,简单说就是可以通过配置文件来注入属性或者修改默认的配置. Spring Boot 系列 Spring Boot 入门 S ...
- Spring boot的配置类
@Configuration 指明当前类是一个配置类 来替代之前的Spring配置文件 Spring boot的配置类 相当于Spring的配置文件 容器添加组件 Spring,通过配置文件添加组件 ...
- 芋道 Spring Boot 自动配置原理
转载自 芋道 Spring Boot 自动配置原理 1. 概述 友情提示:因为本文是分享 Spring Boot 自动配置的原理,所以需要胖友有使用过 Spring Boot 的经验.如果还没使用过 ...
- Spring Boot——日志配置
日志,通常不会在需求阶段作为一个功能单独提出来,也不会在产品方案中看到它的细节.但是,这丝毫不影响它在任何一个系统中的重要的地位. 为了保证服务的高可用,发现问题一定要即使,解决问题一定要迅速,所以生 ...
最新文章
- python使用matplotlib可视化阶梯图、使用step函数可视化阶梯图、可视化时间序列数据的波动周期和规律
- java 输出数据类型_输入输出和java数据类型
- NiosII中Flash的使用(转)
- C# 正则表达式(备忘录)
- Chapter 3 Phenomenon——19
- MySQL 错误 1366:1366 Incorrect integer value
- Locating Elements(一)
- ❤️测试人的曲折职场路:从毕业的5K到20K,四年我换了3份工作…
- 快速学计算机的方法,学电脑打字用什么方法学的最快
- 也许黎曼猜想是错误的
- 任天堂Switch最优DNS测试
- 漫步微积分二十二——微分方程和分离变量法
- k8s dns 无法解析
- android打包发布流程,从源文件到APK-Android打包流程
- [python]计算miou的方式
- 【PaddleOCR】一、PaddleOCR安装、测试(Win10)
- Qt学习之信号与槽函数断开:disconnect
- IMAX重开369家中国影院;康希诺辉瑞签署疫苗推广服务协议 | 美通企业日报
- 关闭LINUX报警声
- arduino烧写报错:can‘t open device “\\.\COM1“