標籤:
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"><struts> <!-- 把它設定為開發模式,發布時要設定為false --> <constant name="struts.devMode" value="true" /> <!-- 設定在class被修改時是否熱載入,發布時要設定為false --> <constant name="struts.convention.classes.reload" value="true"/> <!-- 自動動態方法的調用,使用這個設定後可以這樣調用:action!method --> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <!-- 使用struts-default預設的轉換器,如果是rest的使用:rest-default,rest需要rest的jar外掛程式 --> <constant name="struts.convention.default.parent.package" value="struts-default"/> <!-- 用於配置包名尾碼。預設為action、actions、struts--> <constant name="struts.convention.package.locators" value="actions" /> <!-- 用於配置類名尾碼,預設為Action,設定後,Struts2隻會去找這種尾碼名的類做映射 --> <constant name="struts.convention.action.suffix" value="Action"/> <!-- 設定即使沒有@Action注釋,依然建立Action映射。預設值是false。因為Convention-Plugin是約定優於配置的風格, 可以不通過註解根據預先的定義就能訪問相應Action中的方法 --> <constant name="struts.convention.action.mapAllMatches" value="true"/> <!-- 指定jsp檔案所在的目錄位址 --> <constant name="struts.convention.result.path" value="/WEB-INF/page/" /> <!-- 自訂jsp檔案命名的分隔字元,HelloWorldAction 根據配置actionName變為hello_world,如果該action命名空間為/login,傳回值為success,會自動在/web-inf/page/login/hello_world_success.jsp 。傳回值為error,會自動尋找/web-inf/page/login/hello_world_error.jsp > --> <constant name="struts.convention.action.name.separator" value="-" /> <!-- 國際化資源檔名稱 --> <constant name="struts.custom.i18n.resources" value="i18n" /> <!-- 是否自動載入國際化資源檔 --> <constant name="struts.i18n.reload" value="true" /> <!-- 瀏覽器是否緩衝靜態內容 --> <constant name="struts.serve.static.browserCache" value="false" /> <!-- 上傳檔案大小限制設定 --> <constant name="struts.multipart.maxSize" value="-1" /> <!-- 主題,將值設定為simple,即不使用UI模板。這將不會產生額外的html標籤 --> <constant name="struts.ui.theme" value="simple" /> <!-- 編碼格式 --> <constant name="struts.i18n.encoding" value="UTF-8" /></struts>
基礎Constants
- struts.devMode 可選值true,false (預設false),在開發模式下,struts2的動態重新載入配置和資源檔的功能會預設生效。同時開發模式下也會提供更完善的日誌支援。
- struts.i18n.reload 可選值true,false(預設值依賴於struts.devMode),是否自動重新載入本地的資源檔。
- struts.i18n.encoding 主要用於佈建要求編碼(預設值(UTF-8)) ,Head和Include標籤的解析編碼。 資源和設定檔的解析編碼。
- struts.configuration.xml.reload 可選值true,false(預設值依賴於struts.devMode)是否自動重新載入XML設定檔
- struts.action.extension 設定struts的Action請求的尾碼,支援多個時以逗號隔開。
- struts.action.excludePattern 設定struts所排除的url(通過Regex匹配)(支援多個,以逗號隔開)
- struts.tag.altSyntax 可選值true,false(預設true) 是否支援ognl運算式
- struts.url.http.port 設定產生URL所對應的http連接埠
- struts.url.https.port 設定產生URL所對應的https連接埠
- struts.url.includeParams 可選值 none, get, all (預設get),設定URL是否包含參數,以及是否只包含GET方式的參數。
- struts.locale 設定struts2預設的locale,決定使用哪個資源檔。
- struts.ui.templateDir 該屬性指定視圖主題所需要模板檔案的位置,該屬性的預設值是template,即預設載入template路徑下的模板檔案
- struts.ui.theme 該屬性指定視表徵圖簽預設的視圖主題,該屬性的預設值是xhtml。
- struts.ui.templateSuffix 該屬性指定模板檔案的尾碼,該屬性的預設屬性值是ftl。該屬性還允許使用ftl、vm或jsp,分別對應FreeMarker、Velocity和JSP模板
- struts.multipart.saveDir 設定上傳臨時檔案的預設目錄
- struts.multipart.maxSize 設定上傳的臨時檔案的最大限制
- struts.objectFactory.spring.autoWire 可選值(name, type, auto, constructor,name)(預設name),設定spring的自動裝配方式,只有引入spring外掛程式後才有效。
- struts.objectFactory.spring.autoWire.alwaysRespect (預設false)設定是否總是以自動裝配策略建立對象。
- struts.objectFactory.spring.useClassCache (預設false)對象工廠是否使用類緩衝,開發模式無效。
- struts.xslt.nocache (預設為false)設定XsltResult是否不是用緩衝。
- struts.custom.properties 設定使用者的自訂屬性檔案名稱列表(用,隔開)
- struts.custom.i18n.resources 設定使用者自訂的資源檔路徑列表(用,隔開)
- struts.serve.static (預設false) 設定是否支援靜態資源請求(要求url在struts或static下)
- struts.serve.static.browserCache (預設false) 是否在靜態資源響應中設定緩衝。只有在支援靜態資源時有效。
- struts.el.throwExceptionOnFailure (預設false)是否在解析el運算式或無法找到屬性時拋出RuntimeException
- struts.ognl.logMissingProperties (預設false)是否日誌無發找到的屬性
- struts.ognl.enableExpressionCache 是否緩衝ognl解析的運算式。
- struts.enable.DynamicMethodInvocation (預設false)是否支援動態方法調用,在URL上通過!method指定方法。
- struts.enable.SlashesInActionNames 在URL中的Action段中是否支援斜線
- struts.mapper.alwaysSelectFullNamespace (預設false) 是否總是用最後一個斜線前的URL段作為namespace
核心對象Constants
- struts.actionProxyFactory 設定ActionProxy的實體工廠,該工廠同時也產生預設的ActionInvoctation
- struts.xworkConverter 設定XWorkConverter對象,該對象用於擷取各種類型的轉換器。
- struts.unknownHandlerManager 設定UnknownHandlerManager的實作類別,用於處理無法找到方法等異常。
- struts.multipart.handler 設定mutipartRequest的handler (預設是jakarta)對應類,org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest
- struts.mapper.class 可選值(struts,composite,restful,restful2)設定URL解析且映射到ACTION的實現,(預設struts).
- struts.mapper.prefixMapping 通過URL首碼映射到對應的Mapper,格式為urlPrefix1:mapperName2,urlPrefix2:mapperName2。必須添加mapperClass為org.apache.struts2.dispatcher.mapper.PrefixBasedActionMapper,並指定struts.mapper.class為該mapper。
- struts.mapper.composite 設定是否支援複合(多個)actionMapper,mapperName用逗號隔開。必須配置struts.mapper.class 為composite 才會生效
- struts.mapper.idParameterName 用於Restful2ActionMapper作為URL中id所對應的parameterName
- struts.ognl.allowStaticMethodAccess (預設false)設定ognl運算式是否支援靜態方法。
- struts.configuration 設定struts2的Settings類。(2.1.2後不再使用)
- struts.urlRenderer 設定struts2的URL render(用於產生的URL),(預設struts),類名org.apache.struts2.components.ServletUrlRenderer
- struts.objectFactory 設定struts2的對象工廠,預設(struts),類名org.apache.struts2.impl.StrutsObjectFactory,當引入struts2-spring外掛程式之後,則被修改為org.apache.struts2.spring.StrutsSpringObjectFactory
- struts.xworkTextProvider 設定struts2的資源檔內容提供類的實現。預設為com.opensymphony.xwork2.TextProviderSupport
- struts.actionValidatorManager 設定ActionValidatorManager 的實作類別。
- struts.valueStackFactory 設定struts2的ValueStack工廠的實現。
- struts.reflectionProvider 設定ReflectionProvider的實作類別
- struts.reflectionContextFactory 設定ReflectionContextFactory的實作類別
- struts.patternMatcher 設定PatternMatcher的實作類別
- struts.staticContentLoader 設定StaticContentLoader的實作類別
Struts2 - 常用的constant標籤[轉]