strust 1.x中配置文件strust-configure.xml详解(一)【Z】

strust 1.x中配置文件strust-configure.xml详解(1)【Z】
  1. <?xml version= "1.0"  encoding= "UTF-8" ?>       
  2. <!DOCTYPE struts-config PUBLIC       
  3. "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"        
  4. "http://jakarta.apache.org/struts/dtds/struts-config.dtd" ><!-- struts- config.xml中的元素必须按照上述doc指令中的dtd文档定义顺序书写,本例即遵从了dtd定义顺 序 --><!-- struts-config是整个xml的根元素,其他元素必须被包含其内 -->       
  5. <struts-config><!--       
  6. 名称:data-sources       
  7. 描述:data-sources元素定义了web App所需要使用的数据源       
  8. 数量:最多一个       
  9. 子元素:data-source       
  10. -->       
  11. <data-sources>       
  12. <!--       
  13. 名称:data-source       
  14. 描述:data-source元素定义了具体的数据源       
  15. 数量:任意多个       
  16. 属性:       
  17. @key :当需要配置多个数据源时,相当于数据源的名称,用来数据源彼此间进行区别       
  18. @type :可以使用的数据源实现的类,一般来自如下四个库       
  19. Poolman,开放源代码软件       
  20. Expresso,Jcorporate       
  21. JDBC Pool,开放源代码软件       
  22. DBCP,Jakarta       
  23. -->       
  24. <data-source key= "firstOne"  type= "org.apache.commons.dbcp.BasicDataSource" >       
  25. <!--       
  26. 名称:set-property       
  27. 描述:用来设定数据源的属性       
  28. 属性:       
  29. @autoCommit :是否自动提交 可选值: true / false        
  30. @description :数据源描述       
  31. @driverClass :数据源使用的类       
  32. @maxCount :最大数据源连接数       
  33. @minCount :最小数据源连接数       
  34. @user :数据库用户       
  35. @password :数据库密码       
  36. @url :数据库url       
  37. -->       
  38. <set-property property= "autoCommit"  value= "true" />       
  39. <set-property property= "description"  value= "Hello!" />       
  40. <set-property property= "driverClass"  value= "com.mysql.jdbc.Driver" />       
  41. <set-property property= "maxCount"  value= "10" />       
  42. <set-property property= "minCount"  value= "2" />       
  43. <set-property property= "user"  value= "root" />       
  44. <set-property property= "password"  value= "" />       
  45. <set-property property= "url"  value= "jdbc:mysql://localhost:3306/helloAdmin" />       
  46. </data-source>       
  47. </data-sources>       
  48.      
  49. <!--       
  50. 名称:form-beans       
  51. 描述:用来配置多个ActionForm Bean       
  52. 数量:最多一个       
  53. 子元素:form-bean       
  54. -->       
  55. <form-beans>       
  56. <!--       
  57. 名称:form-bean       
  58. 描述:用来配置ActionForm Bean       
  59. 数量:任意多个       
  60. 子元素:form-property       
  61. 属性:       
  62. @className :指定与form-bean元素相对应的配置类,一般默认使用org.apaceh.struts.config.FormBeanConfig,如果自定义,则必须继承 FormBeanConfig       
  63. @name :必备属性!为当前form-bean制定一个全局唯一的标识符,使得在整个Struts框架内,可以通过该标识符来引用这个ActionForm Bean。       
  64. @type :必备属性!指明实现当前ActionForm Bean的完整类名。       
  65. -->       
  66. <form-bean name= "Hello"  type= "myPack.Hello" >       
  67. <!--       
  68. 名称:form-property       
  69. 描述:用来设定ActionForm Bean的属性       
  70. 数量:根据实际需求而定,例如,ActionForm Bean对应的一个登陆Form中有两个文本框,name和password,ActionForm Bean中也有这两个字段,则此处编写两个form-property来设定属性       
  71. 属性:       
  72. @className :指定与form-property相对应的配置类,默认是org.apache.struts.config.FormPropertyConfig,如果自定义,则必须继承FormPropertyConfig类       
  73. @name :所要设定的ActionForm Bean的属性名称       
  74. @type :所要设定的ActionForm Bean的属性值的类       
  75. @initial :当前属性的初值       
  76. -->       
  77. <form-property name= "name"  type= "java.lang.String" />       
  78. <form-property name= "number"  type= "java.lang.Iteger"  initial= "18" />       
  79. </form-bean>       
  80. </form-beans>       
  81.      
  82. <!--       
  83. 名称:global-exceptions       
  84. 描述:处理异常       
  85. 数量:最多一个       
  86. 子元素:exception       
  87. -->       
  88. <global-exceptions>       
  89. <!--       
  90. 名称:exception       
  91. 描述:具体定义一个异常及其处理       
  92. 数量:任意多个       
  93. 属性:       
  94. @className :指定对应exception的配置类,默认为org.apache.struts.config.ExceptionConfig       
  95. @handler :指定异常处理类,默认为org.apache.struts.action.ExceptionHandler       
  96. @key :指定在Resource Bundle种描述该异常的消息key       
  97. @path :指定当发生异常时,进行转发的路径       
  98. @scope :指定ActionMessage实例存放的范围,默认为request,另外一个可选值是session       
  99. @type :必须要有!指定所需要处理异常类的名字。       
  100. @bundle :指定资源绑定       
  101. -->       
  102. <exception       
  103. key= "" hello.error       
  104. path= "/error.jsp"        
  105. scope= "session"        
  106. type= "hello.HandleError" />       
  107. </global-exceptions>       
  108.      
  109. <!--       
  110. 名称:global-forwards       
  111. 描述:定义全局转发       
  112. 数量:最多一个       
  113. 子元素:forward       
  114. -->       
  115. <global-forwards>       
  116. <!--       
  117. 名称:forward       
  118. 描述:定义一个具体的转发       
  119. 数量:任意多个       
  120. 属性:       
  121. @className :指定和forward元素对应的配置类,默认为org.apache.struts.action.ActionForward       
  122. @contextRelative :如果为 true ,则指明使用当前上下文,路径以“/”开头,默认为 false        
  123. @name :必须配有!指明转发路径的唯一标识符       
  124. @path :必须配有!指明转发或者重定向的URI。必须以 "/" 开头。具体配置要与contextRelative相应。       
  125. @redirect :为 true 时,执行重定向操作,否则执行请求转发。默认为 false        
  126. -->       
  127. <forward name= "A"  path= "/a.jsp" />       
  128. <forward name= "B"  path= "/hello/b.do" />       
  129. </global-forwards>       
  130.      
  131. <!--       
  132. 名称:action-mappings       
  133. 描述:定义action集合       
  134. 数量:最多一个       
  135. 子元素:action       
  136. -->       
  137. <action-mappings>       
  138. <!--       
  139. 名称:action       
  140. 描述:定义了从特定的请求路径到相应的Action类的映射       
  141. 数量:任意多个       
  142. 子元素:exception,forward(二者均为局部量)       
  143. 属性:       
  144. @attribute :制定与当前Action相关联的ActionForm Bean在request和session范围内的名称(key)       
  145. @className :与Action元素对应的配置类。默认为org.apache.struts.action.ActionMapping       
  146. @forward :指名转发的URL路径       
  147. @include :指名包含的URL路径       
  148. @input :指名包含输入表单的URL路径,表单验证失败时,请求会被转发到该URL中       
  149. @name :指定和当前Acion关联的ActionForm Bean的名字。该名称必须在form-bean元素中定义过。       
  150. @path :指定访问Action的路径,以 "/" 开头,没有扩展名       
  151. @parameter :为当前的Action配置参数,可以在Action的execute()方法中,通过调用ActionMapping的getParameter()方法来获取参数       
  152. @roles :指定允许调用该Aciton的安全角色。多个角色之间用逗号分割。处理请求时,RequestProcessor会根据该配置项来决定用户是否有调用该Action的权限       
  153. @scope :指定ActionForm Bean的存在范围,可选值为request和session。默认为session       
  154. @type :指定Action类的完整类名       
  155. @unknown :值为 true 时,表示可以处理用户发出的所有无效的Action URL。默认为 false        
  156. @validate :指定是否要先调用ActionForm Bean的validate()方法。默认为 true        
  157. 注意:如上属性中,forward/include/type三者相斥,即三者在同一Action配置中只能存在一个。       
  158. -->       
  159. <action path= "/search"        
  160. type= "addressbook.actions.SearchAction"        
  161. name= "searchForm"        
  162. scope= "request"        
  163. validate= "true"        
  164. input= "/search.jsp" >       
  165. <forward name= "success"  path= "/display.jsp" />       
  166. </action>       
  167. </action-mappings>       
  168.      
  169. <!--       
  170. 名称:controller       
  171. 描述:用于配置ActionServlet       
  172. 数量:最多一个       
  173. 属性:       
  174. @bufferSize :指定上传文件的输入缓冲的大小.默认为 4096        
  175. @className :指定当前控制器的配置类.默认为org.apache.struts.config.ControllerConfig       
  176. @contentType :指定相应结果的内容类型和字符编码       
  177. @locale :指定是否把Locale对象保存到当前用户的session中,默认为 false        
  178. @processorClass :指定负责处理请求的Java类的完整类名.默认org.apache.struts.action.RequestProcessor       
  179. @tempDir :指定文件上传时的临时工作目录.如果没有设置,将才用Servlet容器为web应用分配的临时工作目录.       
  180. @nochache : true 时,在相应结果中加入特定的头参数:Pragma ,Cache-Control,Expires防止页面被存储在可数浏览器的缓存中,默认为 false        
  181. -->       
  182. <controller       
  183. contentType= "text/html;charset=UTF-8"        
  184. locale= "true"        
  185. processorClass= "CustomRequestProcessor" >       
  186. </controller><!--       
  187. 名称:message-resources       
  188. 描述:配置Resource Bundle.       
  189. 数量:任意多个       
  190. 属性:       
  191. @className :指定和message-resources对应的配置类.默认为org.apache.struts.config.MessageResourcesConfig       
  192. @factory :指定资源的工厂类,默认为org.apache.struts.util.PropertyMessageResourcesFactory       
  193. @key :       
  194. @null :       
  195. @parameter :       
  196. -->       
  197. <message-resources       
  198. null = "false"        
  199. parameter= "defaultResource" />       
  200. <message-resources       
  201. key= "images"        
  202. null = "false"        
  203. parameter= "ImageResources" />       
  204.      
  205. <!--       
  206. 名称:plug-in       
  207. 描述:用于配置Struts的插件       
  208. 数量:任意多个       
  209. 子元素:set-property       
  210. 属性:       
  211. @className :指定Struts插件类.此类必须实现org.apache.struts.action.PlugIn接口       
  212. -->       
  213. <plug-in       
  214. className= "org.apache.struts.validator.ValidatorPlugIn" >       
  215. <!--       
  216. 名称:set-property       
  217. 描述:配置插件的属性       
  218. 数量:任意多个       
  219. 属性:       
  220. @property :插件的属性名称       
  221. @value :该名称所配置的值       
  222. -->       
  223. <set-property       
  224. property= "pathnames"        
  225. value= "/WEB-INF/validator-rules.xml,/WEB-INF/vlaidation.xml" />       
  226. </plug-in>       
  227.      
  228. </struts-config>