Shiro框架的Filter很奇特,说他奇特,是因为他是继承了原生的Filter,然后添加了一些新的能力,然而,为了区别原生的Filter,shiro框架开辟了一个新的过滤器链提供给这样的Filter调用,可以说,Shiro框架的过滤器链构成了shiro框架核心的处理能力。
Shiro框架的Filter链和原生的不一样,原生的Filter链是线性的,是一条管道,而Shiro框架的Filter链却是多有管道,每个管道的开始是一个路径匹配,这样,一个路径匹配能够让这个管道里面的所有Filter都处理一遍。
类似于如下这种形状:
shiro框架的过滤器链设计得却是很独特,非常方便实现针对某一个请求路径,需要多个过滤器处理的场景。
shiro具有不同种类的Filter类型,用来处理不同的请求,比如登录请求,普通请求等等。