Java web App如何映射更多url的筛选器
我有自己的筛选器,我想将此筛选器添加到我的url Url是:Java web App如何映射更多url的筛选器,java,filter,Java,Filter,我有自己的筛选器,我想将此筛选器添加到我的url Url是: admin_menu admin_users admin_banana admin_orange 我的映射: sce.getServletContext().addFilter("adminFilter1", adminGuar).addMappingForUrlPatterns(null, false, "/admin_menu"); sce.getServletContext().addFilter("adminFilter2
admin_menu
admin_users
admin_banana
admin_orange
我的映射:
sce.getServletContext().addFilter("adminFilter1", adminGuar).addMappingForUrlPatterns(null, false, "/admin_menu");
sce.getServletContext().addFilter("adminFilter2", adminGuar).addMappingForUrlPatterns(null, false, "/admin_users");
sce.getServletContext().addFilter("adminFilter3", adminGuar).addMappingForUrlPatterns(null, false, "/admin_banana");
sce.getServletContext().addFilter("adminFilter4", adminGuar).addMappingForUrlPatterns(null, false, "/admin_orange");
有没有更好的方法来映射过滤器?我的意思是使用一个命令
我尝试映射url/admin.*(但不起作用!):
谢谢您的帮助。通配符只能用于 但是,
FilterRegistration.addMappingForUrlPatterns
方法的最后一个参数是一个var arg,因此您可以写得稍微短一点
sce.getServletContext().addFilter("adminFilter", adminGuar).addMappingForUrlPatterns(null, false,
"/admin_menu", "/admin_users", "/admin_banana", "/admin_orange");
此外,当前的URL模式需要进行以下重新设计:
/admin/menu
/admin/users
/admin/banana
/admin/orange
这就允许
sce.getServletContext().addFilter("adminFilter", adminGuar)
.addMappingForUrlPatterns(null, false, "/admin/*");
sce.getServletContext().addFilter("adminFilter", adminGuar)
.addMappingForUrlPatterns(null, false, "/admin/*");