过滤器是什么?
它是基于Servlet 技术实现的, 简单的来说,过滤器就是起到过滤的作用,在web项目开发中帮我们过滤一些指定的 url做一些特殊的处理。 过滤器主要做什么?

过滤掉一些不需要的东西,例如一些错误的请求、修改请求和相应的内容(以此为案例)拿来过滤未登录用户。

1.创建一个MyFilter.java实现Filter接口

MyFilter文件代码如下


import org.springframework.context.annotation.Configuration;import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;public class MyFilter implements Filter {@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {HttpServletResponse resp = (HttpServletResponse) response;HttpServletRequest res = (HttpServletRequest) request;System.out.println("当前过滤到的路径:"+res.getRequestURI());/*** 这是的代码是为了前后分离 允许跨域*/resp.setHeader("Access-Control-Allow-Origin","*");resp.setHeader("Access-Control-Allow-Credentials", "true");resp.setHeader("Access-Control-Allow-Methods", "POST, GET, PATCH, DELETE, PUT");resp.setHeader("Access-Control-Max-Age", "3600");resp.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");chain.doFilter(request, response);  //放行// request.getRequestDispatcher("/api/open/unLogin").forward(request,response); //重定向}}

2. FilterRegistrationBean 实现

创建 FilterConfig文件

FilterConfig文件代码如下:

import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import xyz.ark.backstage_12.filter.MyFilter;import java.util.ArrayList;
import java.util.List;@Configuration
public class FilterConfig {@Beanpublic MyFilter myFilter(){return new MyFilter();}@Beanpublic FilterRegistrationBean filterRegistrationBean(){FilterRegistrationBean filterRegistrationBean  = new FilterRegistrationBean();//设置过滤器filterRegistrationBean.setFilter(myFilter());  //设置过滤器名称filterRegistrationBean.setName("header");  //设置名称List list = new ArrayList();list.add("/*");   //拦截路径filterRegistrationBean.setUrlPatterns(list);filterRegistrationBean.setOrder(1);  //设置访问优先级 值越小越高return filterRegistrationBean;}}

springboot 过滤器配置相关推荐

  1. SpringBoot:过滤器配置详解

    一.过滤器简介 1.过滤器是什么? Filter也称之为过滤器,过滤器是对数据进行过滤,预处理.开发人员可以对客户端提交的数据进行过滤处理,比如敏感词,也可以对服务端返回的数据进行处理.还有就是可以验 ...

  2. springboot过滤器排除掉一些url_理解这9大内置过滤器,才算是精通Shiro

    小Hub领读: 权限框架一般都是一堆过滤器.拦截器的组合运用,在shiro中,有多少个内置的过滤器你知道吗?在哪些场景用那些过滤器,这篇文章希望你能对shiro有个新的认识! 别忘了,点个 [在看] ...

  3. SpringBoot+Mybatis配置Druid多数据源

    开篇之前,说一句题外话.多数据源和动态数据源的区别. 多数据源,一般用于对接多个业务上独立的数据库(可能异构数据库). 动态数据源,一般用于大型应用对数据切分. 配置参考 如何配置多数据源,网上教程一 ...

  4. SpringBoot | 自动配置原理

    微信公众号:一个优秀的废人.如有问题,请后台留言,反正我也不会听. 前言 这个月过去两天了,这篇文章才跟大家见面,最近比较累,大家见谅下.下班后闲着无聊看了下 SpringBoot 中的自动配置,把我 ...

  5. 案例代码:springboot+shiro配置同一用户多设备登录最大会话数

    另一链接: springboot+springsecurity配置登录后踢出前一个登录用户 1.自定义登陆过滤器类: /*** 登录帐号控制过滤器* */ public class KickoutSe ...

  6. SpringBoot的配置详解application

    SpringBoot的配置文件application有两种文件格式,两种配置的内容是一致的,只是格式不一致. 1.application.properties 2.application.yml或者a ...

  7. creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器

    Spring Boot的配置详解 在本节中,我们将重点聚焦在Spring Boot的配置方面. 理解Spring Boot的自动配置 按照"约定大于配置"的原则,Spring Bo ...

  8. SpringBoot 自动配置原理

    创建项目 通过Spring Initialize创建SpringBoot项目 而接下来要说的是关于配置文件的事情.关乎配置文件可以参考官方文档. 对于配置文件来说到底在配置文件里面可以进行配置那些内容 ...

  9. springboot 过滤器

    springboot 过滤器 方式一 package com.springboot.stu.filter;import org.springframework.core.annotation.Orde ...

最新文章

  1. Node.js Promise.all 限制并发数量
  2. jQuery教程07-内容筛选选择器
  3. Windows下设置开机自启动的方式(手动/C++代码的形式)
  4. C语言中函数调用中静态变量的应用
  5. 使用Reaver破解开启了WPS功能的wifi密码(wpa/wpa2)
  6. 关于ATmega328P和ATmega328PB中16位定时器的使用
  7. 【Python】使用网络调试助手传输数据(UDP协议)
  8. layui表格中显示内容换行
  9. 英语单词 One 个人 5. 身体动作
  10. 计算机网络体系结构中协议和服务的差别,第3章 计算机网络体系结构及协议 -4-2...
  11. jcepolicy7.zip linux,HDP安全之集成kerberos/LDAP、ranger(knox自带LDAP)
  12. 模板编程:模板特例化以及特例化inline的做用
  13. 嵌入式Linux小项目之图片编解码播放器(6)
  14. 百度移动优化:关于移动端点击图片放大有多少人注意?
  15. djangoday18
  16. 计算机专业学自我分析,计算机专业学习自我鉴定(精选6篇)
  17. 喵哈哈村的打印机游戏(区间DP)
  18. 通达信MACD面积背离指标公式,思路来自于缠论背驰
  19. html中的空格怎么写,html中空格代码是什么?
  20. 惊艳!可视化的 js:动态图演示 - 事件循环 Event Loop

热门文章

  1. openmpi参数_MPI初学-安装及OpenMPI函数说明
  2. SQL Server数据库批量附加
  3. chrome扩展开发介绍和右键开发
  4. 一文读懂Mysql所有知识点
  5. 八皇后问题php,C++_C++实现八皇后问题的方法,本文实例展示了C++实现八皇后 - phpStudy...
  6. java重载(Overload)
  7. Object转Map的几个坑
  8. DJYOS技术特点:关键服务微秒级恢复
  9. centos6 安装bbr_centos7安装bbr开启加速
  10. 3、Go版本管理工具