springboot 过滤器实现的具体步骤

本文介绍了如何在SpringBoot项目中实现并应用过滤器。过滤器可以拦截所有类型的请求,包括静态资源请求,并展示了具体的实现步骤及代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

过滤器,顾名思义,能够过滤一切请求(而拦截器只能过滤action请求),包括静态资源的请求。

实现很简单:

(1)写一个过滤器。过滤实现在doFilter方法里面。chain.doFilter(request, response)  表示过滤通过,能够往下执行。所以过滤操作要写在chain.doFilter(request, response) 前面,作一些条件判断,如果不符合条件,则不执行chain.doFilter(request, response);

@WebFilter(filterName="myFilter",urlPatterns="/*")
public class MyFilter implements Filter {
    @Override
    public void init(FilterConfig arg0) throws ServletException {
        System.out.println("MyFilter init............");
    }
    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        System.out.println("MyFilter doFilter.........before");
        chain.doFilter(request, response);
        System.out.println("MyFilter doFilter.........after");
    }
    @Override
    public void destroy() {
        System.out.println("MyFilter destroy..........");
    }
}
(2)别忘了让springboot启动类扫描servlet组件,否则是不生效的,扫描的注解是@ServletComponentScan。
@SpringBootApplication
@ServletComponentScan
public class SpringbootCompanyApplication {
	public static void main(String[] args) {
		SpringApplication.run(SpringbootCompanyApplication.class, args);
	}
}
完成。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值