struts-config.xml 文件的配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
 "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"
 "http://jakarta.apache.org/struts/dtds/struts-config.dtd">
<!-- 
struts-config.xml中的元素必须按照上述doc指令中的dtd文档定义顺序书写,
本例即遵从了dtd定义顺序
struts-config是整个xml的根元素,其他元素必须被包含其内 
 -->
<struts-config>
	<!--
		名  称: data-sources
		描  述: data-sources元素定义了web App所需要使用的数据源
		数  量: 最多一个
		子元素: data-source
	-->
	<data-sources>
		<!--
			名  称:data-source
			描  述:data-source元素定义了具体的数据源
			数  量:任意多个
			属  性:
			@key:当需要配置多个数据源时,相当于数据源的名称,用来数据源彼此间进行区别
			@type:可以使用的数据源实现的类,一般来自如下四个库
			Poolman,开放源代码软件
			Expresso,Jcorporate
			JDBC Pool,开放源代码软件
			DBCP,Jakarta
		-->
		<data-source key="firstOne"
			type="org.apache.commons.dbcp.BasicDataSource">
			<!--
				名称:set-property
				描述:用来设定数据源的属性
				属性:
				@autoCommit:是否自动提交 可选值:true/false
				@description:数据源描述
				@driverClass:数据源使用的类
				@maxCount:最大数据源连接数
				@minCount:最小数据源连接数
				@user:数据库用户
				@password:数据库密码
				@url:数据库url
			-->
			<set-property property="autoCommit" value="true" />
			<set-property property="description" value="Hello!" />
			<set-property property="driverClass"
				value="com.mysql.jdbc.Driver" />
			<set-property property="maxCount" value="10" />
			<set-property property="minCount" value="2" />
			<set-property property="user" value="root" />
			<set-property property="password" value="" />
			<set-property property="url"
				value="jdbc:mysql://localhost:3306/helloAdmin" />
		</data-source>
	</data-sources>

	<!--
		名  称:form-beans
		描  述:用来配置多个ActionForm Bean
		数  量:最多一个
		子元素:form-bean
	-->
	<form-beans>
		<!--
			名  称:form-bean
			描  述:用来配置ActionForm Bean
			数  量:任意多个
			子元素:form-property
			属  性:
			@className:指定与form-bean元素相对应的配置类,
			一般默认使用org.apaceh.struts.config.FormBeanConfig,
			如果自定义,则必须继承 FormBeanConfig
			@name:必备属性!为当前form-bean制定一个全局唯一的标识符,
			使得在整个Struts框架内,可以通过该标识符来引用这个ActionForm Bean。
			@type:必备属性!指明实现当前ActionForm Bean的完整类名。
		-->
		<form-bean name="Hello" type="myPack.Hello">
			<!--
				名  称:form-property
				描  述:用来设定ActionForm Bean的属性
				数  量:根据实际需求而定,例如,ActionForm Bean对应的一个登陆Form中有两个文本框,
				name和password,ActionForm Bean中也有这两个字段,则此处编写两个form-property来设定属性
				属  性:
				@className:指定与form-property相对应的配置类,
				默认是org.apache.struts.config.FormPropertyConfig,
				如果自定义,则必须继承FormPropertyConfig类
				@name:所要设定的ActionForm Bean的属性名称
				@type:所要设定的ActionForm Bean的属性值的类
				@initial:当前属性的初值
			-->
			<form-property name="name" type="java.lang.String" />
			<form-property name="number" type="java.lang.Integer"
				initial="18" />
		</form-bean>
	</form-beans>

	<!--
		名  称:global-exceptions
		描  述:处理异常
		数  量:最多一个
		子元素:exception
	-->
	<global-exceptions>
		<!--
			名  称:exception
			描  述:具体定义一个异常及其处理
			数  量:任意多个
			属  性:
			@className:指定对应exception的配置类,默认为org.apache.struts.config.ExceptionConfig
			@handler:指定异常处理类,默认为org.apache.struts.action.ExceptionHandler
			@key:指定在Resource Bundle种描述该异常的消息key
			@path:指定当发生异常时,进行转发的路径
			@scope:指定ActionMessage实例存放的范围,默认为request,另外一个可选值是session
			@type:必须要有!指定所需要处理异常类的名字。
			@bundle:指定资源绑定
		-->
		<exception key="hello.error" path="/error.jsp" scope="session"
			type="hello.HandleError" />
	</global-exceptions>

	<!--
		名  称:global-forwards
		描  述:定义全局转发
		数  量:最多一个
		子元素:forward
	-->
	<global-forwards>
		<!--
			名  称:forward
			描  述:定义一个具体的转发
			数  量:任意多个
			属  性:
			@className:指定和forward元素对应的配置类,默认为org.apache.struts.action.ActionForward
			@contextRelative:如果为true,则指明使用当前上下文,路径以“/”开头,默认为false
			@name:必须配有!指明转发路径的唯一标识符
			@path:必须配有!指明转发或者重定向的URI。必须以"/"开头。具体配置要与contextRelative相应。
			@redirect:为true时,执行重定向操作,否则执行请求转发。默认为false
		-->
		<forward name="A" path="/a.jsp" />
		<forward name="B" path="/hello/b.do" />
	</global-forwards>

	<!--
		名  称:action-mappings
		描  述:定义action集合
		数  量:最多一个
		子元素:action
	-->
	<action-mappings>
		<!--
			名  称:action
			描  述:定义了从特定的请求路径到相应的Action类的映射
			数  量:任意多个
			子元素:exception,forward(二者均为局部量)
			属  性:
			@attribute:制定与当前Action相关联的ActionForm Bean在request和session范围内的名称(key)
			@className:与Action元素对应的配置类。默认为org.apache.struts.action.ActionMapping
			@forward:指名转发的URL路径
			@include:指名包含的URL路径
			@input:指名包含输入表单的URL路径,表单验证失败时,请求会被转发到该URL中
			@name:指定和当前Acion关联的ActionForm Bean的名字。该名称必须在form-bean元素中定义过。
			@path:指定访问Action的路径,以"/"开头,没有扩展名
			@parameter:为当前的Action配置参数,可以在Action的execute()方法中,
			通过调用ActionMapping的getParameter()方法来获取参数
			@roles:指定允许调用该Aciton的安全角色。多个角色之间用逗号分割。
			处理请求时,RequestProcessor会根据该配置项来决定用户是否有调用该Action的权限
			@scope:指定ActionForm Bean的存在范围,可选值为request和session。默认为session
			@type:指定Action类的完整类名
			@unknown:值为true时,表示可以处理用户发出的所有无效的Action URL。默认为false
			@validate:指定是否要先调用ActionForm Bean的validate()方法。默认为true
			注意:如上属性中,forward/include/type三者相斥,即三者在同一Action配置中只能存在一个。
		-->
		<action path="/search" type="addressbook.actions.SearchAction"
			name="searchForm" scope="request" validate="true"
			input="/search.jsp">
			<forward name="success" path="/display.jsp" />
		</action>
	</action-mappings>

	<!--
		名  称:controller
		描  述:用于配置ActionServlet
		数  量:最多一个
		属  性:
		@bufferSize:指定上传文件的输入缓冲的大小.默认为4096
		@className:指定当前控制器的配置类.默认为org.apache.struts.config.ControllerConfig
		@contentType:指定相应结果的内容类型和字符编码
		@locale:指定是否把Locale对象保存到当前用户的session中,默认为false
		@processorClass:指定负责处理请求的Java类的完整类名.
		默认org.apache.struts.action.RequestProcessor
		@tempDir:指定文件上传时的临时工作目录.如果没有设置,
		将才用Servlet容器为web应用分配的临时工作目录.
		@nochache:true时,在相应结果中加入特定的头参数:
		Pragma ,Cache-Control,Expires防止页面被存储在可数浏览器的缓存中,默认为false
	-->
	<controller contentType="text/html;charset=UTF-8" locale="true"
		processorClass="CustomRequestProcessor">
	</controller>
	<!--
		名  称:message-resources
		描  述:配置Resource Bundle.
		数  量:任意多个
		属  性:
		@className:指定和message-resources对应的配置类.
		默认为org.apache.struts.config.MessageResourcesConfig
		@factory:指定资源的工厂类,默认为org.apache.struts.util.PropertyMessageResourcesFactory
		@key:
		@null:
		@parameter:
	-->
	<message-resources null="false" parameter="defaultResource" />
	<message-resources key="images" null="false"
		parameter="ImageResources" />

	<!--
		名  称:plug-in
		描  述:用于配置Struts的插件
		数  量:任意多个
		子元素:set-property
		属  性:
		@className:指定Struts插件类.此类必须实现org.apache.struts.action.PlugIn接口
	-->
	<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
		<!--
			名  称:set-property
			描  述:配置插件的属性
			数  量:任意多个
			属  性:
			@property:插件的属性名称
			@value:该名称所配置的值
		-->
		<set-property property="pathnames"
			value="/WEB-INF/validator-rules.xml,/WEB-INF/vlaidation.xml" />
	</plug-in>

</struts-config>

 

你可能感兴趣的:(apache,xml,bean,mysql,struts)