Java 在Servlet 3.1.0 API上执行webfilters的顺序
我试图弄清楚web筛选器的执行顺序。我使用Servlet3.1.0API和ApacheTomcat8.5.32。我假设它们分为两组,一组是按url模式划分的,另一组是按servlet名称划分的。但是servlet容器如何确定从每个集合中选择过滤器的顺序呢? 我用@WebFilter注释测试了两个完全相同的过滤器,它们的名称不同。我发现名为“filterD”的过滤器首先执行,然后是“filterB”。 然后,我尝试通过在web.xml中放置简单配置来更改顺序,如下所示:Java 在Servlet 3.1.0 API上执行webfilters的顺序,java,servlets,servlet-filters,Java,Servlets,Servlet Filters,我试图弄清楚web筛选器的执行顺序。我使用Servlet3.1.0API和ApacheTomcat8.5.32。我假设它们分为两组,一组是按url模式划分的,另一组是按servlet名称划分的。但是servlet容器如何确定从每个集合中选择过滤器的顺序呢? 我用@WebFilter注释测试了两个完全相同的过滤器,它们的名称不同。我发现名为“filterD”的过滤器首先执行,然后是“filterB”。 然后,我尝试通过在web.xml中放置简单配置来更改顺序,如下所示: <filter-ma
<filter-mapping>
<filter-name>filterB</filter-name>
<url-pattern />
</filter-mapping>
<filter-mapping>
<filter-name>filterD</filter-name>
<url-pattern />
</filter-mapping>
检查此链接
@WebFilter(filterName = "filterB", urlPatterns = "/hello")
@WebFilter(filterName = "filterD", urlPatterns = "/hello")