在struts2框架中struts.xml配置文件中,配置了action類請求還有跳轉動作,還能在該文件中對struts相關常量進行配置。本篇文件就對struts.xml文件標籤等做一下簡單的介紹。
1.常量標籤constant
常量標籤constant是struts2用來設置整個框架的運行參數,當然不設置也行,因爲這些參數的配置文件default.properties其中早就配置好了,裏面各種參數都有默認值或者沒有設置。初次學習的人可以去struts2-core-xxx.jar包下面的org.apache.struts2包裏面的找到default.properties文件,常量的所有設置,及其鍵值對裏面都有,其實使用constant標籤設置的值就是修改default.properties文件。
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
上面就是設置編碼格式,還有其他參數。在default.properties文件中:
### This can be used to set your default locale and encoding scheme
# struts.locale=en_US
struts.i18n.encoding=UTF-8
2.包標籤package
package標籤的作用是方便進行分模塊開發。
屬性 | 作用 |
---|---|
name | 包名(用於區分各個包) |
extends | 由於struts2框架的一些核心功能的配置都在struts-default包中,所以一般都都直接或間接地繼承struts-derault.(默認值:struts-default) |
abstract | 說明這是一個抽象包,裏面沒有action(取值:true、false) |
namespace | 名稱空間;一般以"/"開頭,與動作action的name組成訪問路徑 |
3.動作標籤action
action標籤的作用是配置動作請求,執行對應的類和方法,進行跳轉。
屬性 | 作用 |
---|---|
name | action 動作的名稱 |
class | 動作對應執行的類(值:包名.類名),不寫默認值:ActionAupport |
method | 執行類裏面的方法,可以沒有這個標籤,默認值execute,返回值success |
在struts2 2.5包中對於method方法的使用,如果要使用通配符,則必須在package標籤下面添加:
<global-allowed-methods>regex:.*</global-allowed-methods>
這個標籤的作用如字面意思,全局允許的方法,通過正則表達式來匹配,是爲了安全考慮。
4.結果標籤result
result標籤位於action標籤裏面,能夠對action的返回值進行匹配,進而執行對應的路徑資源訪問。
屬性 | 作用 |
---|---|
name | result的名稱,也是action動作類執行完畢之後的返回值,必須與之相同才能訪問,result標籤包裹的資源路徑 |
type | result訪問路徑資源的方式(默認值:dispatcher 轉發、redirect 重新定向 ) |
總的寫法就這樣子:
<action name="test" class="com.xj.struts.HelloAction">
<result name = "success" type="dispatcher">/Hello.jsp</result>
</action>
5.插入標籤include
include標籤的作用是爲了更好的分工合作項目而使用的標籤,它可以將其他的名字不同,由其他人書寫方便總結的xml配置文件進行導入到struts.xml文件中來。
<include file="*/*/*/hello.xml"></include>
這裏的目錄用“/”來分割。include標籤的位置與package同一級。