【使用篇】SpringBoot整合Filter(二)

两种方式:

  • 通过注解扫描完成 Filter 组件的注册
  • 通过方法完成 Filter 组件的注册

一、通过注解扫描完成 Filter 组件的注册

1. 编写Filter类

/**
 * SpringBoot整合Filter方式一
 *
 * 传统方式
 * <filter>
 *         <filter-name>FirstFilter</filter-name>
 *         <filter-class>com.linhw.demo.filter.FirstFilter</filter-class>
 * </filter>
 *
 * <filter-mapping>
 *         <filter-name>FirstFilter</filter-name>
 *         <url-pattern>/filter</url-pattern>
 * </filter-mapping>
 */
@WebFilter(filterName="FirstFilter", urlPatterns={"/filter"})
public class FirstFilter implements Filter{

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
            throws IOException, ServletException {
        System.out.println("FirstFilter 进入......");
        arg2.doFilter(arg0, arg1);
        System.out.println("FirstFilter 离开......");
    }

    @Override
    public void destroy() {

    }

}

2. 编写启动类

@SpringBootApplication
@ServletComponentScan //扫描,并实例化类
public class App3 {

    public static void main(String[] args) {
        SpringApplication.run(App3.class, args);
    }

}

二、通过方法完成 Filter 组件的注册

原文地址:https://www.cnblogs.com/myitnews/p/11518024.html

时间: 2024-09-30 04:40:32

【使用篇】SpringBoot整合Filter(二)的相关文章

SpringBoot学习3:springboot整合filter

整合方式一:通过注解扫描完成 Filter 组件的注册 1.编写filter package com.bjsxt.filter; import javax.servlet.*; import javax.servlet.annotation.WebFilter; import java.io.IOException; /** * Created by Administrator on 2019/2/4. */ @WebFilter(filterName = "FirstFilter",

SpringBoot: 3.SpringBoot整合filter(转)

整合方式一:通过注解扫描完成 Filter 组件的注册 1.编写filter package com.bjsxt.filter; import javax.servlet.*; import javax.servlet.annotation.WebFilter; import java.io.IOException; /** * Created by Administrator on 2019/2/4. */ @WebFilter(filterName = "FirstFilter",

九、springboot整合redis二之缓冲配置

1.创建Cache配置类 @Configuration @EnableCaching public class RedisCacheConfig extends CachingConfigurerSupport { @Value("${redis.cache.expiration}") private Long expiration; /** * * 管理缓存 */ @Bean public CacheManager cacheManager(RedisTemplate<Obje

Springboot整合Elastic-Job(二)

上文我们讲到Springboot整合Elastic-Job整合的demo,只是简单的实现了主要功能.本文在上文基础上,进行新的调整. 事件追踪 Elastic-Job提供了事件追踪功能,可通过事件订阅的方式处理调度过程的重要事件,用于查询.统计和监控.Elastic-Job目前提供了基于关系型数据库两种事件订阅方式记录事件.我们只需要将添加如下配置即可 /** * 将作业运行的痕迹进行持久化到DB */ @Bean public JobEventConfiguration jobEventCon

SpringBoot整合Shiro (二)

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码学和会话管理.相比较Spring Security,shiro有小巧.简单.易上手等的优点.所以很多框架都在使用shiro. Shiro包含了三个核心组件:Subject, SecurityManager 和 Realms. Subject 代表了当前用户的安全操作. SecurityManager 则管理所有用户的安全操作.它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityMana

SpringBoot整合Filter

在传统的web开发时,我们创建一个Filter,需要在web.xml里做配置: <filter> <filter-name>FirstFilter</filter-name> <filter-class>com.linhw.demo.filter.MyFirstFilter</filter-class> </filter> <filter-mapping> <filter-name>FirstFilter<

SpringBoot整合RabbitMq(二)

       本文序列化和添加package参考:https://www.jianshu.com/p/13fd9ff0648d RabbitMq安装 [[email protected] ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE elasticsearch latest 874179f19603 11 days ago 771 MB springbootdemo4docker latest cd13bc7f56a0 2 week

SpringBoot整合JavaWeb

一.SpringBoot整合Servlet的两种方式 1.通过注解扫描完成Servlet组件的注册 编写Servlet package com.example.demo.servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import

SpringBoot系列十二:SpringBoot整合 Shiro

1.概念:SpringBoot 整合 Shiro 2.具体内容 Shiro 是现在最为流行的权限认证开发框架,与它起名的只有最初的 SpringSecurity(这个开发框架非常不好用,但是千万不要 以为 SpringSecurity 没有用处,它在 SpringCloud 阶段将发挥重大的作用).但是现在如果要想整合 Shiro 开发框架有一点很遗憾, SpringBoot 没有直接的配置支持,它不像整合所谓的 Kafka.Redis.DataSource,也就是说如果要想整合 Shiro 开