![](/img/trans.png)
[英]How to map long REST urls in struts2 - using struts2 rest plugin
[英]How does Struts2 map URLs to actions?
我想了解我很久以前使用過的東西,但不知道它是如何工作的。
當我單擊這樣的超鏈接時:
<a href="name_action.action">Link</a>
Struts2如何激活映射到struts.xml文件的動作?
<action name="name_action">
<result type="redirect">web/page.jsp</result>
</action>
Struts2使用ActionMapper將URL映射到Actions。
ActionMapper接口提供HTTP請求與操作調用請求之間的映射,反之亦然。
給定HttpServletRequest時,如果沒有任何動作調用請求匹配,則ActionMapper可能返回null,或者它可能返回描述框架要嘗試的動作調用的ActionMapping。
不需要ActionMapper保證返回的ActionMapping是真實的動作,或者確保有效的請求。 因此,大多數ActionMappers不需要僅為了確定是否應映射請求就查閱Struts配置。
正如請求可以從HTTP映射到動作調用一樣,情況也相反。 但是,由於HTTP請求(在HTTP響應中顯示時)必須為String形式,因此將返回String而不是實際的請求對象。
默認情況下,使用
DefaultActionMapper
:默認動作映射器實現,使用標准
*.[ext]
(其中ext通常為“ action”)模式。 從Struts配置鍵struts.action.extension
查找擴展名。
注意:您不應該直接登陸JSP,而應在通過操作后將其分派。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.