Struts2 如何在筛选器中创建url映射?
我在这里已经有一个未回答的问题,即当我们使用servlet时,如何以及何时在任何url中追加.do 今天当我了解过滤器时,另一个疑问出现了:Struts2 如何在筛选器中创建url映射?,struts2,struts,Struts2,Struts,我在这里已经有一个未回答的问题,即当我们使用servlet时,如何以及何时在任何url中追加.do 今天当我了解过滤器时,另一个疑问出现了: <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 支柱2 /* 在这种情况下,如果它意味着
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
支柱2
/*
在这种情况下,如果它意味着将检查所有请求,那么什么是/*?此外,当调用某个操作时,
url会显示:http://..../myapp/register.action.
与.do
类似,添加了.action
,在映射中甚至没有提到它。请清除此疑问,如果可能的话,.do
也要怀疑…在struts core jar中查找struts-default.properties,您可以在那里找到这些设置
您可以提供逗号分隔的列表
e、 g.struts.action.extension=action,jnlp,do
struts.action.extension=action (default setting)
让我们试着一个接一个地澄清您的疑问
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
上述所有请求都将通过过滤器,现在一旦通过过滤器,S2将在内部检查哪个URL是有效的S2 URL
例如,如果您已将扩展名设置为。action
S2将仅识别具有这些扩展名的URL,并将处理这些扩展名,而filter将处理所有扩展名
希望这将帮助您消除疑虑在哪里可以找到此文件?struts-core.jar?是的,它检查所有请求。映射与URL生成无关。S2标记生成完整的URL。
yourapplication-domian/abc.action
yourapplication-domian/abc.do
yourapplication-domian/abc.jsp