带有Web模块3的@WebFilter注释 - 混淆了多个url模式

时间:2017-12-25 13:35:17

标签: java servlets java-annotations

我对使用Dynamic Web Modules> = 3.0的WebFilter注释感到困惑。我读了这篇文章(https://www.concretepage.com/java-ee/jsp-servlet/how-to-use-filter-in-servlet-3-with-webfilter-annotation),告诉我没有web.xml就不能使用@WebFilter,因为@WebFilter没有定义顺序,它只减少了web.xml中存储的配置。

我无法在没有url模式的情况下创建web.xml。例如。这是无效的:

<filter-mapping>
    <filter-name>OAuthSecurityFilter</filter-name>
</filter-mapping>
<filter-mapping>
    <filter-name>GuiceFilter</filter-name>
</filter-mapping>  

它无效,因为除了filter-name之外,还必须提供至少一个服务器名称或url映射。但在这种情况下,我想知道如果我还指定注释的值意味着什么:

@WebFilter(value="/*", filterName="OAuthSecurityFilter")
public class OAuthSecurityFilter implements Filter {

你看,如果你不能在web.xml中指定没有url模式的过滤器,并且你必须在web.xml中提供过滤器,那么在WebFilter注释中获得“value”有什么意义呢?它会被忽略吗?它会覆盖web.xml中给出的url模式吗?

0 个答案:

没有答案