封装自定义接口filter

包含两个方法,第一个过滤的路径数组,第二个为过滤器执行的顺序.spring boot 会按照order值的大小,从小到大的顺序来依次过滤。

package com.theeternity.common.baseFilter;

import javax.servlet.Filter;

/**

* @program: ApiBoot

* @description: 封装Filter

* @author: TheEternity Zhang

* @create: 2019-02-17 13:08

*/

public interface MappingFilter extends Filter {

String[] addUrlPatterns();

int order();

}

书写具体的filter

package com.theeternity.beans.filterConfig;

import com.theeternity.common.baseFilter.MappingFilter;

import javax.servlet.*;

import javax.servlet.FilterConfig;

import java.io.IOException;

/**

* @program: ApiBoot

* @description: 权限过滤器

* @author: TheEternity Zhang

* @create: 2019-02-17 13:14

*/

public class AuthFilter implements MappingFilter {

@Override

public String[] addUrlPatterns() {

return new String[]{"/*"};

}

@Override

public int order() {

return 0;

}

@Override

public void init(FilterConfig filterConfig) throws ServletException {

}

@Override

public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {

//具体逻辑

}

@Override

public void destroy() {

}

}

注入bean到容器

package com.theeternity.beans.filterConfig;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import org.springframework.boot.web.servlet.FilterRegistrationBean;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

/**

* @program: ApiBoot

* @description: 注册过滤器

* @author: TheEternity Zhang

* @create: 2019-02-17 13:10

*/

@Configuration

public class FilterConfig {

private Logger logger= LoggerFactory.getLogger(FilterConfig.class);

@Bean

public FilterRegistrationBean registFilter() {

FilterRegistrationBean registration = new FilterRegistrationBean();

AuthFilter authFilter=new AuthFilter();

registration.setFilter(authFilter);

registration.addUrlPatterns(authFilter.addUrlPatterns());

registration.setOrder(authFilter.order());

registration.setName("AuthFilter");

return registration;

}

}

java过滤器api_springboot集成过滤器相关推荐

  1. (十六)ATP应用测试平台——java应用中的过滤器Filter、拦截器Interceptor、参数解析器Resolver、Aop切面,你会了吗?

    前言 过滤器Filter.拦截器Interceptor.参数解析器Resolver.Aop切面是我们应用开发中经常使用到的技术,到底该如何使用这些web附属功能, 本小节我们就分别介绍一下其各自的用法 ...

  2. Java培训总结:过滤器链的实现方法、配置和案例分析

    今天小千给大家分享的是Java培训总结:过滤器链的实现方法.配置和案例分析. 过滤器能够对网站中的各种内容进行过滤(页面.Servlet.图片.文件),可以在网站内容请求和响应时进行一些操作,完成一些 ...

  3. java过滤器放行_过滤器学习

    过滤器学习: 问题: 目前我们访问Servlet,是可以直接进行访问的,没有进行任何防护.可能会造成服务器资源的浪费,以及安全性不高.我们希望在请求被Servlet处理之前,进行一次请求的校验,符合要 ...

  4. java 监听器 分类_java过滤器和监听器详解 分类: 学习专区

    过滤器 1.Filter工作原理(执行流程) 当客户端发出Web资源的请求时,Web服务器根据应用程序配置文件设置的过滤规则进行检查,若客户请求满足过滤规则,则对客户请求/响应进行拦截,对请求头和请求 ...

  5. 用java写敏感词过滤器的代码

    用java写敏感词过滤器的代码 这里采用动态代理,所以要创建proxy代理对象,利用代理,来增强某些方法(getParameter方法.getParameterMap方法.getParameterVa ...

  6. Java Servlet中Filter过滤器的原理以及使用方式

    详细介绍了Java Web Servlet中的Filter过滤器的原理以及常见用法. 文章目录 1 Filter接口 1.1 过滤器的生命周期 1.2 doFilter过滤方法 2 Filter的使用 ...

  7. java 过滤器异常处理_Servlet 过滤器和异常处理

    Servlet 编写过滤器 Servlet 过滤器可以动态地拦截请求和响应,以变换或使用包含在请求或响应中的信息.可以将一个或多个 Servlet 过滤器附加到一个 Servlet 或一组 Servl ...

  8. java web开发(过滤器)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 过滤器,或许换成拦截器更合适一点.看到这个词,让我想到了linux kernel里面的netfi ...

  9. Java后端自顶向下方法——过滤器与回调函数

    Java后端自顶向下方法--过滤器与回调函数 (一)回调函数与lambda表达式 在讲过滤器的原理之前,我们先来了解一下什么是回调函数.我们在平时开发中,经常会遇到模块之间的互相调用,调用的方式主要分 ...

最新文章

  1. oracle 统计一年中每个月数据总和_excel表格有每月数据 怎样统计全年的-用excel公式怎样计算每年每个月的数据总和?...
  2. jquery如何对多个对象绑定同一事件
  3. python的none是什么-Python中的None与Null(空字符)的区别
  4. 自学编程成功概率有多少可能
  5. 不连续曲线 highcharts_无人车运动规划中常用的方法:多项式曲线
  6. iOS应用开发的五个Java开源工具
  7. 笨办法学python3 pdf 脚本之家_解决python3输入的坑——input()
  8. 配置使用VCSA自带的备份恢复工具
  9. 19.多个版本的Netcat概览
  10. 基于windows server 2008 web服务器的性能,使用Windows Server 2008 R2理由_服务器评测与技术-中关村在线...
  11. iPhone7,苹果最后的摇钱树
  12. ai带来的革命_AI革命就在这里。 这与我们预期的不同。
  13. Cadence 17.2 Pad Editor入门指南(2)
  14. java 梯形校正_高清投影神器 联想YOGA平板2 Pro评测
  15. 聊一聊输入阻抗、输出阻抗和阻抗匹配
  16. 307条互联网交流缩略语(English Abbreviations on Internet)
  17. 计算机怎么搜索隐藏的网络,电脑如何连接隐藏wifi 笔记本电脑如何添加隐藏wifi?-192路由网...
  18. 雷电9模拟器安装抓包工具whistle证书
  19. 世界杯海信再出圈,三星:“谈不上愉悦”
  20. 非常漂亮的一款html引导页导航网站旋转头像变幻背景单页源码

热门文章

  1. lombok 生成代码_使用Project Lombok减少Java应用程序中的样板代码
  2. slf4j 桥接与被桥接_合成和桥接方法
  3. jvm破坏双亲委派_破坏JVM
  4. 如何利用ide进行跟踪调试_使用调试器进行事后跟踪
  5. Java“地铁”表(JavaFX)
  6. java8的新特性_Java8的
  7. defender 删除_Java 8中的默认方法(Defender方法)简介
  8. Neo4j:找到两个纬度/经度之间的中间点
  9. JavaFX将会留下来!
  10. __macosx_在5分钟内在MacOSX Lion中设置JAVA_HOME,MAVEN_HOME,ANT_HOME