• springboot中使用filter


    通过注解的方式实现filter过滤器。

    创建Filter包,并在该包下创建MyFilter

    示例代码:

    package com.bjpowernode.springboot.filter;
    
    import javax.servlet.*;
    import javax.servlet.annotation.WebFilter;
    import java.io.IOException;
    
    @WebFilter(urlPatterns = "/*")
    public class MyFilter implements Filter {
        @Override
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
            System.out.println("您的请求已经进入MyFilter过滤器……");
           filterChain.doFilter(servletRequest,servletResponse);
        }
    }

    注意需要加注解,配置需要拦截哪些路径。过滤的逻辑在输出语句处实现。并且如果不阻断请求,需要让请求过滤链继续。

    需要在启动类上加包扫描注解,代码如下:

    package com.bjpowernode.springboot;
    
    import org.mybatis.spring.annotation.MapperScan;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.boot.web.servlet.ServletComponentScan;
    import org.springframework.transaction.annotation.EnableTransactionManagement;
    
    @SpringBootApplication
    @MapperScan("com.bjpowernode.springboot.mapper") //取代在mapper接口上配置的@Mapper
    @ServletComponentScan(basePackages = {"com.bjpowernode.springboot.servlet",
    "com.bjpowernode.springboot.filter"})//扫描Servlet包   扫描filter包
    @EnableTransactionManagement //开启事务支持
    public class WebApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(WebApplication.class, args);
        }
    
    }

    注解:@ServletComponentScan是扫描包的。

  • 相关阅读:
    销售类
    语法
    编辑技巧 word
    assert
    游戏摘录
    游戏类链接 财富导图
    读书笔记之C# delegate
    c# socket传输struct类型
    关于wcf中一些重要词语解释
    asp.net CROSS-PAGE POSTING
  • 原文地址:https://www.cnblogs.com/Tpf386/p/11046428.html
Copyright © 2020-2023  润新知