Spring Boot的filter(过滤器)简单使用实例详解

 更新时间:2017年04月24日 14:15:38   作者:牛头人  
过滤器(Filter)的注册方法和 Servlet 一样,有两种方式:代码注册或者注解注册,下面通过实例给大家介绍Spring Boot的filter(过滤器)简单使用,一起看看吧

过滤器(Filter)的注册方法和 Servlet 一样,有两种方式:代码注册或者注解注册

1.代码注册方式

通过代码方式注入过滤器

@Bean
  public FilterRegistrationBean indexFilterRegistration() {
    FilterRegistrationBean registration = new FilterRegistrationBean(new IndexFilter());
    registration.addUrlPatterns("/");
    return registration;
  }

IndexFilter.Java类:

package com.example.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class IndexFilter implements Filter{
  @Override
  public void destroy() {
    System.out.println("filter destroy method");
  }
  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
      throws IOException, ServletException {
    System.out.println("filter doFilter method");
  }
  @Override
  public void init(FilterConfig arg0) throws ServletException {
    System.out.println("filter init method");
  }
}

2.注解方式

通过注解方式注入过滤器

IndexFilter2.java类

package com.example.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
@WebFilter(urlPatterns = "/*", filterName = "indexFilter2")
public class IndexFilter2 implements Filter{
  @Override
  public void destroy() {
    System.out.println("filter2 destroy method");
  }
  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
      throws IOException, ServletException {
    System.out.println("filter2 doFilter method");
  }
  @Override
  public void init(FilterConfig arg0) throws ServletException {
    System.out.println("filter2 init method");
  }
}

把注解加到入口处启动即可

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

以上所述是小编给大家介绍的Spring Boot的filter(过滤器)简单使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Maven添加reactor依赖失败的解决方案

    Maven添加reactor依赖失败的解决方案

    起初是自己在学spring boot3,结果到了reactor这一部分的时候,在项目的pom.xml文件中添加下列依赖报错,接下来通过本文给大家介绍Maven添加reactor依赖失败的解决方案,需要的朋友可以参考下
    2024-06-06
  • IDEA(jetbrain通用)使用教程图解

    IDEA(jetbrain通用)使用教程图解

    本文通过图文并茂的形式给大家介绍了IDEA(jetbrain通用)使用教程,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-09-09
  • java实现按层遍历二叉树

    java实现按层遍历二叉树

    这篇文章主要为大家详细介绍了java实现按层遍历二叉树,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • java中对象和JSON格式的转换方法代码

    java中对象和JSON格式的转换方法代码

    JSON格式可以轻松地以面向对象的方式转换为Java对象,下面这篇文章主要给大家介绍了关于java中对象和JSON格式的转换方法,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • Java遍历Map四种方式讲解

    Java遍历Map四种方式讲解

    这篇文章主要介绍了Java遍历Map四种方式讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • java多线程编程之使用runnable接口创建线程

    java多线程编程之使用runnable接口创建线程

    实现Runnable接口的类必须使用Thread类的实例才能创建线程,通过Runnable接口创建线程分为以下两步
    2014-01-01
  • Servlet简单实现登录功能

    Servlet简单实现登录功能

    这篇文章主要为大家详细介绍了Servlet简单实现登录功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03
  • java实现输出字符串中第一个出现不重复的字符详解

    java实现输出字符串中第一个出现不重复的字符详解

    这篇文章主要介绍了java实现输出字符串中第一个出现不重复的字符详解的相关资料,需要的朋友可以参考下
    2017-04-04
  • Maven Spring jar包启动报错问题解决方案

    Maven Spring jar包启动报错问题解决方案

    maven 编译jar包,放在linux服务器启动不起来,提示:xxxx-0.0.1-SNAPSHOT.jar中没有主清单属性,接下来通过本文给大家分享问题原因及解决方案,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • MyBatis编写一个简单的SQL生成工具

    MyBatis编写一个简单的SQL生成工具

    MyBatis 是一个强大的数据持久化框架,它提供了一种半自动化的 ORM 实现方式,本文将为大家介绍如何使用MyBatis编写一个简单的SQL生成工具,需要的可以了解下
    2025-03-03

最新评论