控制过滤器Filter执行顺序

方式一:web.xml中的filter-mapping位置

通过web.xml中控制filter-mapping的位置来控制的,放在上面的会比放在下面的先执行,如下“用户登录检查过滤器”会比“接口日志过滤器”先执行

	<!-- 用户登录检测过滤器 -->
		<filter>
		 <filter-name>UserLoginFilter</filter-name>
			 <filter-class>net.tfgzs.demo.filter.UserLoginFilter</filter-class>
		</filter>
		<filter-mapping>
			 <filter-name>UserLoginFilter</filter-name>
			 <url-pattern>/*</url-pattern>
		</filter-mapping>
		<!--接口日志过滤器-->
	<filter>
		<filter-name>ApiLog</filter-name>
		<filter-class>net.tfgzs.demo.filter.ApiLog</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>ApiLog</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

方式二:@WebFilter

使用@WebFilter注解的时候发现注解里面没有提供可以控制执行顺序的参数
在这里插入图片描述
如果想要控制filer的执行顺序可以 通过filter的文件名来控制

比如:

aFilter.java

bFilter.java

容器的执行顺序aFilter.java -> bFilter.java

由于使用项目情况一开始,将Filter放在了不同的包下面,包名的顺序也会影响Filter执行顺序

比如:

a/aFilter.java

a/cFilter.java

b/bFilter.java

容器的执行顺序是:a/aFilter.java -> a/cFilter.java -> b/bFilter.java。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值