广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >java过滤器(Filter)
  • 272
分享到

java过滤器(Filter)

servlet 2023-09-07 21:09:21 272人浏览 独家记忆
摘要

原文链接:java过滤器(Filter – 编程屋 目录 1 过滤器简介 2 Filter详细介绍 3 Filter的用法 3.1 用法1  3.2 用法2 1 过滤器简介 filter也称之为过滤器,它是javaweb三大组件之一(S

原文链接:java过滤器(Filter – 编程屋

目录

1 过滤器简介

2 Filter详细介绍

3 Filter的用法

3.1 用法1

 3.2 用法2


1 过滤器简介

filter也称之为过滤器,它是javaweb三大组件之一(Servlet程序、Listener监听器、Filter过滤器)

作用:既可以对请求进行拦截,也可以对响应进行处理。

常见场景:权限检查,日记操作、拦截请求、过滤操作、对请求字符设置编码。

2 Filter详细介绍

要想介绍filter,就必须介绍Filter中的三个方法。

        @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() {    }

3 Filter的用法

3.1 用法1

1)自定义一个过滤器实现Filter接口、配置@WEBFilter注解,配置拦截路径(也可通过web.xml配置)

@WebFilter(urlPatterns = "    @Override    public void init(FilterConfig filterConfig) throws ServletException {    }        @Override    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {        System.out.println("我是过滤器,我进来了");    }        @Override    public void destroy() {    }}

2)在启动类上加上@ServletComponentScan注解

@SpringBootApplication@ServletComponentScanpublic class springbootInterceptorApplication {    public static void main(String[] args) {        SpringApplication.run(SpringbootInterceptorApplication.class, args);    }}

3)controller:

@RestControllerpublic class LoginController {    @GetMapping("/test/filter")    public String testFilter(){        return "该请求被拦截了,但是在过滤器中已经放行了";    }}

直接浏览器访问:

 控制台输出:发现该请求已经被过滤去拦截

 3.2 用法2

1)自定义一个过滤器实现Filter接口、配置拦截路径(也可通过web.xml配置)

public class MyFilterOne implements Filter {        @Override    public void init(FilterConfig filterConfig) throws ServletException {    }        @Override    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {        System.out.println("我是过滤器,我进来了");        filterChain.doFilter(servletRequest, servletResponse);    }        @Override    public void destroy() {    }}

2)在启动类上注册

@SpringBootApplicationpublic class SpringbootInterceptorApplication {    public static void main(String[] args) {        SpringApplication.run(SpringbootInterceptorApplication.class, args);    }        @Bean    public FilterReGIStrationBean getFilterRegistrationBean(){        FilterRegistrationBean bean = new FilterRegistrationBean(new MyFilterOne());        //bean.addUrlPatterns(new String[]{"*.do","*.jsp"});        bean.addUrlPatterns("/*");        return bean;    }}

测试结果与3.1相同。

总结:

要想调用配置一个过滤器:

1)启动类上增加注解@ServletComponentScan

2)新建一个类使其实现Filter接口,并实现里面的三个方法

3)在新建类上加上@WebFilter()注解,配置需要拦截的规则

4)在doFilter方法中控制filterChain.doFilter(servletRequest, servletResponse)调用

同样,如果前后端交互有遇到跨域问题的,也可以通过Filter解决(亲测有效),如:

以上只是部分内容,为了维护方便,本文已迁移到新地址:java过滤器(Filter – 编程屋

来源地址:https://blog.csdn.net/qq_50652600/article/details/127308348

--结束END--

本文标题: java过滤器(Filter)

本文链接: https://www.lsjlt.com/news/399092.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • [Java]过滤器(Filter)
    一、什么是过滤器 过滤器是Servlet的高级特性之一,是实现Filter接口的Java类! 过滤器的执行流程:   从上面的图我们可以发现,当浏览器发送请求给服务器的时候,先执行过滤器,然后才访问Web的资源。服务器响应Response...
    99+
    2023-08-31
    servlet java 开发语言
  • java过滤器(Filter)
    原文链接:java过滤器(Filter – 编程屋 目录 1 过滤器简介 2 Filter详细介绍 3 Filter的用法 3.1 用法1  3.2 用法2 1 过滤器简介 filter也称之为过滤器,它是javaWeb三大组件之一(S...
    99+
    2023-09-07
    servlet
  • java过滤器中Filter的ChainFilter过滤链
    在Java过滤器中,FilterChain是一种过滤链,用于按照一定顺序依次调用多个过滤器对请求进行处理。FilterChain接口定义了一个doFilter方法,该方法接受ServletRequest和ServletResponse作...
    99+
    2023-08-11
    java
  • Java过滤器Filter详解
    目录Filter学习Filter功能Filter的工作原理多个Filter的实现Filter的执行逻辑总结Filter学习 Filter功能 拦截jsp、静态图片文件、静态html资源文件 实现URL级别的权限访问控制 ...
    99+
    2019-04-25
    Java过滤器 Filter
  • java filter过滤器怎么使用
    在 Java 中使用过滤器(Filter)需要以下步骤:1. 创建一个类并实现 javax.servlet.Filter 接口。该接...
    99+
    2023-09-06
    java filter
  • HBase Filter 过滤器概述
    abc 过滤器介绍 HBase过滤器是一套为完成一些较高级的需求所提供的API接口。 过滤器也被称为下推判断器(push-down predicates),支持把数据过滤标准从客户端下推到服务器,带有 Filter 条件的 RPC...
    99+
    2019-09-14
    HBase Filter 过滤器概述
  • ASP.NET Core MVC 过滤器(Filter)
    目录一.过滤器如何工作1.选择过滤器2.实现过滤器3.过滤器作用域 4.取消和短路二.配置过滤器1.依赖注入2.排序 3.对比中间件一.过滤器如何工作   不同的...
    99+
    2022-11-12
  • Java中使用Filter过滤器的方法
    Filter过滤器 着重记录下 public void doFilter(){} 方法参数: (1) ServletRequest servletRequest  请求re...
    99+
    2022-11-12
  • Java过滤器Filter如何使用教程
    这篇“Java过滤器Filter如何使用教程”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java过滤器Filter如何使用...
    99+
    2023-07-05
  • java中filter过滤器的作用有哪些
    在Java中,filter过滤器主要用于对集合或流中的元素进行条件过滤,只保留满足特定条件的元素。它的主要作用包括: 过滤元素:...
    99+
    2023-10-24
    java filter
  • java中filter过滤器的用法是什么
    在Java中,过滤器(Filter)是一种用于在请求到达目标资源之前或之后执行某些操作的组件。过滤器可以用于实现对请求的拦截、修改或...
    99+
    2023-10-11
    java
  • Java过滤器Filter的基本使用教程
    过滤器Filter 用于拦截请求、过滤响应在不使用过滤器时,浏览器向服务器发送请求后,服务器将会直接去获取资源并响应给浏览器添加Filter后,浏览器向服务器发送请求,请求在到达服务...
    99+
    2023-02-22
    Java Filter Java Filter过滤器 Java过滤器
  • 详解Servlet之过滤器(Filter)
    过滤器1.为什么使用它?有很多全站性的东西需要处理,例如乱码问题,通过过滤器统一进行过滤更简单2.有什么用?实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截。简单说,就是可以实现web容器对某资源的访问前截获进行相关的处理,还可以...
    99+
    2023-05-31
    servlet 过滤器 滤器
  • servlet过滤器(Filter)详解(九)
    本文实例为大家分享了servlet过滤器的具体代码,供大家参考,具体内容如下1.servlet过滤器产生背景  项目中我们会遇到这样一类的需求,对访问服务器的用户ip实施过滤,只有在允许名单中的ip才能访问服务,为了实现需求,每当有客户端请...
    99+
    2023-05-31
    servlet 过滤器 filter
  • filter过滤器怎么在Java项目中使用
    这篇文章将为大家详细讲解有关filter过滤器怎么在Java项目中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Filter过滤器技术。通过过滤器,可以对来自客户端的请求进行拦截,进行预...
    99+
    2023-05-31
    java ava filter
  • Java中过滤器 (Filter) 和 拦截器 (Interceptor)的使用
    目录1.过滤器 (Filter)2.拦截器 (Interceptor)3.区别3.11、实现原理不同3.2 使用范围不同3.3 触发时机不同3.4 拦截的请求范围不同3.5 注入Be...
    99+
    2022-11-12
  • 一文详解JavaWeb过滤器(Filter)
    目录基本介绍过滤器(Filter)接口使用过滤器(Filter)创建过滤器(Fliter)使用过滤器(Filter)配置过滤器(Filter)拦截路径 注解方式xml方式&...
    99+
    2023-05-19
    Java 过滤器 Java Filter
  • HBase Filter 过滤器之RowFilter详解
    前言:本文详细介绍了HBase RowFilter过滤器Java&Shell API的使用,并贴出了相关示例代码以供参考。RowFilter 基于行键进行过滤,在工作中涉及到需要通过HBase Rowkey进行数据过滤时可以考虑使...
    99+
    2017-12-16
    HBase Filter 过滤器之RowFilter详解
  • HBase Filter 过滤器之FamilyFilter详解
    前言:本文详细介绍了 HBase FamilyFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考。FamilyFilter 基于列族进行过滤,在工作中涉及到需要通过HBase 列族进行数据过滤...
    99+
    2017-01-24
    HBase Filter 过滤器之FamilyFilter详解
  • HBase Filter 过滤器之QualifierFilter详解
    前言:本文详细介绍了 HBase QualifierFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考。QualifierFilter 基于列名进行过滤,在工作中涉及到需要通过HBase 列名...
    99+
    2014-11-14
    HBase Filter 过滤器之QualifierFilter详解
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作