Struts2之常量配置
阿新 • • 發佈:2018-12-01
常量配置
Struts2框架預設常量的位置
在struts2-core的jar包中.
在org.apache.struts2包下有default.properties檔案
在default.properties檔案中定義了struts2框架的常用常量.
如何自定義常量
1.可以在src下建立一個strtus.properties配置檔案
檔案的內容,可以根據default.properties檔案中的內容來修改
2.可以在web.xml檔案中配置
例如
<filter>
<filter-name>struts2Filter</filter-name >
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
可以宣告struts2框架常量值
<init-param>
<param-name>struts.i18n.encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter >
init-param
標籤下就是定義的常量的鍵和值.
3.可以直接在strtus.xml檔案中定義常量 (推薦)
下面主要是介紹在struts.xml中進行常量的配置.
struts.xml中配置常量
在struts.xml中的struts標籤下,可以進行常量的配置.
用的是constant標籤.
constant標籤的name屬性為常量的鍵, value屬性為常量的值.
鍵都可以在default.properties檔案中查詢, 都有其預設的值.
可以根據自己需要,將其預設值進行改變.
介紹幾個常用的常量配置
下面這個常量配置的意義是,可以幫助我們解決post請求亂碼問題
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
下面這個常量配置含義是 指定訪問strtsu2框架路徑的副檔名. 該例子是說前端傳送的請求,必須以.action結尾,後臺的action才能進行響應.
<constant name="struts.action.extension" value="action"></constant>
下面這個常量配置含義是開啟開發者模式.
它會提供更加詳細報錯資訊,以及在struts.xml檔案修改後不在需要重啟伺服器
<constant name="struts.devMode" value="true"></constant>
需要注意的一點
後加載的配置檔案中的常量會將先載入的常量覆蓋.
即如果在不同的配置檔案中,對同一個鍵值進行了常量的配置, 那麼後加載的配置檔案, 會對先載入的配置檔案中的值進行覆蓋掉.
配置檔案的載入順序如下
- 第一個載入的是default.properties檔案
位置:strtus2-core.jar包 org.apache.struts2包下
作用:主要是聲明瞭struts2框架的常量 - 第二個載入的是一批配置檔案
Strtus-default.xml
位置:struts2-corl.jar
作用:聲明瞭interceptor result bean
Strtus-plugin.xml
位置:在strtus2的外掛包中
作用:主要用於外掛的配置宣告
Strtus.xml
位置:在我們自己的工程中
作用:用於我們自己工程使用strtus2框架的配置 - 第三個載入的是自定義的strtus.properties
位置:都是在自己工程的src下
作用:定製常量 - 第四自定義配置提供
- 第五載入的是web.xml配置檔案
主要是載入strtus2框架在web.xml檔案中的相關配置. - 第六 bean相關配置