spring filter

自己的感想,记录一下,如有错误,望指正~~~~~~~~

 

通过过滤器,我们可以获得请求信息,然后根据请求信息自己进行修改,或者在安全性中根据请求判断用户权限。

比如我们会在编码转换,security,http请求方法转换(post->delete,post->put)等等。

 

在spring中:

 

       我们在开发web项目时,都会用到服务器,比如apache。在apache启动来以后,对匹配的url请求,都会执行相应的filter。

 

FilterChain链:

       如果在web.xml中有多个自己写的filter,那么filter的执行顺序是按照从上到下的配置顺序来执行的。那么怎么才能知道一个filter执行完以后继续执行下一个呢?

       FilterChain在这里就起作用了。filterchain就相当于一个链表,通过调用方法,去执行下一个。

如下的arg2.doFilter():

 

package co.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 FilterTest implements Filter{

	@Override
	public void destroy() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void doFilter(ServletRequest arg0, ServletResponse arg1,
			FilterChain arg2) throws IOException, ServletException {
		// TODO Auto-generated method stub
		
		System.out.println("sss");
		arg2.doFilter(arg0,arg1);		
	}

	@Override
	public void init(FilterConfig arg0) throws ServletException {
		// TODO Auto-generated method stub
		
	}

}

如果在自己写filter时,后面的filter不能执行,或许会是前面的filter没写这句话造成的。

 

每天了解一点点,你会…………………………

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值