1.主要包含8個子元素:
data-sources,form-beans,global-exceptions,global-forwards,action-mapping,controller,message-resources,plug-in
2.二級標簽對應作用
< data-sources>元素:用來配置應用程序所需要的數據源
<form-beans>元素:用來配置表單驗證的類,
<global-exceptions>元素:用來配置異常處理
<global-forwards>元素:用來配置聲明全局的轉發關系
<action-mappings>元素:用來描述從特定的請求路徑到對應的Action類的映射
<form-beans>元素:用來配置RequestProcessor
<message-resources>元素:用來配置本地化消息文本
<plug-in>元素:用來配置Struts的Plug-in插件
3.三級標簽對應含義
1)< data-sources>包含標簽:
<data-source>
<data-source>:包含一系列的屬性設置,用以設置數據庫鏈接參數<data-source>
包含屬性值有:type ,key,driverClass,url,user,password,MaxCount,MinCount,description,readOnly,loginTimeout,autoCommit.
type:數據源類型,默認為org.apached.commons.dbcp.BasicDataSourcekey:綁定在ServletContext的
dataSource實例的索引鍵,若不設定則默認為Action.DATA_SOURCE_KEY,如果在應用程序中有多個
DataSource,則必須設置Key值
driverClass:所用的JDBC驅動類
url:所用JDBC的URL
user:連接到數據庫的用戶名
password:連接到數據庫的密碼
MaxCount:同時打開的最大連接數,默認為2
MinCount:同時打開的最小連接數,默認為1
description:關於DataSource的描述信息
readOnly:設置為true,則表示該連接是只讀的,默認為false
loginTimeout:創建連接的最大允許時間,以秒為單位
autoCommit:如果為true,則每次execute之後會強制回滾
2)<form-beans>包含標簽:
<form-bean>
<form-bean>:將要綁定到Action的FormBean的實例<form-bean>
包含元素屬性:classname,name,type
classname:用於指定和form-bean元素對應的配置類,如果不指定該屬性,則使用默認值org.apache.struts.config.FormBeanConfig。
如果進行自定義,則必須擴展類FormBeanConfig
name:用於指定ActiongFromBean的唯一標識
type:用於指定ActionForm的完整類名
3)<global-exceptions>
包含元素<global-exception>
<global-exception>:代表全局異常的配置<global-exception>
包含的元素屬性有:classname,Handler,key,path,scope,type,bundle
classname:指定和exception元素對應的配置類,默認為org.apache.struts.config.ExceptionConfig
Handler指定異常處理類,默認為org.apache.struts.config.ExceptionHandler
key:指定在ResourceBundle中描述該異常的消息key
path:指定當異常發生時的轉發路徑
scope:指定ActionMessages實例的存放范圍,可選值包括request和session,默認為request
type:指定所需處理異常類的名字
bundle:指定綁定的資源文件,不指定則使用默認資源文件
4)<global-forwards>
包含元素<forward>
<forward>:用於指定全局轉發跳轉<forward>
包含元素屬性有:classname,contextRelative,name,path,redirect
classname:和forward元素對應的配置類,默認為org.apache.struts.action.ActionForward
contextRelative:當此項為true時,表示path屬性以“/”開頭,相對於當前上下文的URL,默認為false
name:轉發路徑的邏輯名
path:轉發或重定向的URL,當contextRelative=false時,URL路徑相對於當前應用(application);當為
true時,表示URL路徑相對於當前上下文(context)
redirect:當此項為true時,表示執行重定向操作,當此項為false時則表示轉向操作,默認為false
5)<action-mappings>包含元素<action>
<action>:主要用於定義Action實例到ActionServlet類<action>
包含元素屬性有:attribute,className,forward,include,input,name,path,parameter,rolers,scope,type,unknown,validate
Attribute:設置和Action關聯的ActionFrom Bean在request和session范圍內的key。
className:和action元素對應的配置元素,默認為org.apache.struts.action.ActionMapping
forward:轉發的URL路徑
include:指定包含URL路徑
input:輸入表單的URL路徑,當表單驗證失敗時,將把請求轉發到該URL
name:指定和Action關聯的ActionFrom Bean的名字,該名字通過Form-Bean定義過
path:指定訪問Action的路徑,以“/”開頭,無擴展名
parameter:指定Action的配置參數,在Aciton類的execute()方法中,可以調用ActionMapping對象的getParameter*(方法來讀取該配置參數
roles指定允許調用該Action的安全角色,多個角色之間用“,”隔開,在處理請求時,
requestProcessor會根據該配置項來決定用戶是否有權限調用Action權限
scope:指定ActionFormBean的存在范圍,可選取為request和session,默認為session
type:指定Action類的完整路徑
unknown:如果此項為true,表示可以處理用戶發出的所有無效的ActionURL,默認為false
validate:指定是否調用ActionFormBean的validate方法,默認值為true
6)<controller>
包含元素屬性有:
processClass,bufferSize,conentType,debug,locale,nochache,tempDir
processClass:指定自定義的RequestProcessor類的全名
bufferSize:指定上傳文件的輸入緩沖大小,默認為4096
conentType:定義response文本類型,默認為text/html
debug:定義當前系統的錯誤級別,默認為0
locale:指定是否把locale對象保存到當前用戶的session中,默認值為false
nochache:指定訪問Action的路徑,以“/”開頭,無擴展名
tempDir:指定處理文件的臨時工作目錄,如果此項沒有設置,將采用Servlet容器為Web應用分配的臨時工作目錄
7)<message-resources>
包含元素屬性有:prameter,className,factory,key,null
Prameter:指定MessageSources的資源文件名,默認com.demo.struts.resources.ApplicationResources
className:和message-resources元素對應的配置類,默認為
org.apache.struts.config.MessageResourcesFactory類
factory:指定消息資源的工廠類,默認為org.apache.struts.util.PropertyMessageResourcesFactory類
null:指定MessageSources類如何處理未知消息的key,如果為true,則返回空字符串,如果為false則返回相關字串,默認為false
8)<plug-in>
包含元素<set-property>
<set-property>:通過設置property設置參數名,value設置參數值.