溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

struts2 package元素如何在Java項目中進(jìn)行配置

發(fā)布時間:2020-11-21 14:43:27 來源:億速云 閱讀:123 作者:Leah 欄目:開發(fā)技術(shù)

struts2 package元素如何在Java項目中進(jìn)行配置?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

package 元素的所有屬性及對應(yīng)功能:

AttributeRequiredDescription
nameyeskey to for other packages to reference ---包名稱,用來讓別的包繼承時使用不能有重復(fù)
extendsnoinherits package behavior of the package it extends -----當(dāng)前包所要繼承的父包,繼承之后,當(dāng)前包擁有父包中所定義的任意類、攔截器等
namespaceno用于區(qū)分包中相同的類
abstractnodeclares package to be abstract (no action configurations required in package)定義當(dāng)前包為一個抽象的包也就是說不能有action元素在當(dāng)前包中

例子:

假如我有以下的配置段落

<struts>
<package name="p1" extends="struts-default">
  <action name="login" class="com.example.action.Login">
  <result>/success.jsp</result>
  </action>

<action name="login1" class="com.example.action.Login">
  <result>/success.jsp</result>
  </action>

</package>

<package name="p2" extends="struts-default" namespace="/testNameSpace">
  <action name="login" class="com.example.action.Login">
  <result>/success.jsp</result>
  </action>
</package>
</struts>

說明:

a、 包p1沒有定義namespace,說明p1用的是默認(rèn)空間""

現(xiàn)在有下面的請求:

1、/工程名/login.action

------這個請求對應(yīng)p1包下的action name=login

2、/工程名/testNameSpace/login.action

-----這個請求對應(yīng)p2包下的action name=login

3、/工程名/testNameSpace/login1.action

----這個請求是請求p2包下的信息的,如果struts在檢索了p2包下的所有action后沒有檢索到當(dāng)前請求的login1,這時struts會檢索前一個命名空間,這里是默認(rèn)空間下是否有當(dāng)前請求,檢查發(fā)現(xiàn)存在login1就得到當(dāng)前檢索

這里我有個個人的建議:

無論你的namespace配置或者沒配置,也無論配置啥樣,你在寫跳轉(zhuǎn)的url的時候請你也把

‘/工程名/'帶上,寫成這樣:/工程名/命名空間1/命名空間2/actionName.action這樣寫能保證路徑的正確性,當(dāng)然如果你在寫跳轉(zhuǎn)的時候不發(fā)暈,可以視你的配置情況加或者不加這個!

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI