Struts应用配置_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Struts应用配置

Struts应用配置

 2011/9/21 8:10:33  zht1933  http://zht1933.iteye.com  我要评论(0)
  • 摘要:Web.xml文件配置<servlet><servlet-name>action</servlet-name><servlet-class>org.appache.struts.action.ActionServlet</servlet-class><init-param><param-name>config</param-name><param-value>/WEB
  • 标签:配置 应用 struts

?

Web.xml文件配置
??? <servlet>

?????? <servlet-name>action</servlet-name>

??? <servlet-class>org.appache.struts.action.ActionServlet</servlet-class>

?????? <init-param>

?????????? <param-name>config</param-name>

?????????? <param-value>/WEB-INF/struts-config.xml</param-value>

?????? </init-param>

??? </servlet>

?

??? <servlet-mapping>

?????? <servlet-name>action</servlet-name>

?????? <url-pattern>*.do</url-pattern>

??? </servlet-mapping>

?

struts-config.xml文件配置

?

?

?

<!DOCTYPE struts-config PUBLIC

?? ? ? ? ?"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"

?? ? ? ? ?"http://struts.apache.org/dtds/struts-config_1_2.dtd">

?

<struts-config>

?

<form-beans>

<!--type:继承ActionForm的实现类 ?-->

<form-bean name="logonForm" type="com.zht.struts.LoginActionForm" />

</form-beans>

?

<action-mappings>

<!--path:访问路径,type:继承Action的实现类,

name:对ActionForm的引用,scope:请求的作用域,默认为session ?-->

<action path="/login"

type="com.zht.struts.LoginActon"?

name="logonForm"

scope="request">

<forward name="success" path="/success.jsp" />

<forward name="error" path="/error.jsp" />

</action>

</action-mappings>

?

</struts-config>

?

?

?

Struts配置文件 说明

1<Struts-config>元素

<struts-config>元素是Struts配置文件的根元素,

<struts-cofig>元素有8个子元素。它的DTD定义如下:

<!ELEMENT struts-config(data-sources?,formbean?,global-exeception?,global-forward?,action-mapping,controller?,message-resources*,plug-in*)>

在Struts配置中,必须按照以上的DTD指定的先后顺序来配置

<Struts-config>元素的各个子元素,如果颠倒了这些元素的配置文件中的位置,在Struts应用启动时会生成错误

?

<data-sources>元素

<data-sources>元素包含零个、一个或者多个<data-sources>子元素,

<data-sources>用于配置特定的数据源,它可以包含多个<set-property>子元素,用于设置数据源的各种属性。

配置了数据源后,就可以在Action类中访问数据源,在org.apache.struts.action.Action类中定义了getDataSource(HttpRequrst)方法,它用于获取数据源对象的引用。

?

DataSource dataSource;?

Connection connection;

dataSource=getDataSource(request);?

connection=dataSource.getConnection();

?

也可以在配置文件中声明多个数据源,此时需要为每一个数据源分配唯一的key值,通过改值来标识特定的数据源。?

?

2<form-beans>元素

<form-beans>元素用来配置多个ActionForm Bean,

<form-beans>包含多个<forom-bean>子元素,,每个<from-bean>包含多个属性,ClassName , name,type

?

<form-beans>

<form-bean name="HelloForm" type="hello.HelloForm" />

</form-beans>

?

注意:配置动态ActionForm Bean,还必须配置<form-bean>元素的<form-property>元素。

?

<form-beans>

<form-bean name="HelloForm" type="hello.HelloForm" />

<form-bean name="userForm" type="org.apache.struts.action.DynaAction">

<from-property name="firstname" type="java.lang.String" />

<form-property name="secondname" type="java.lang.String">

<form-property name="age" type="java.Integer" initial="18">

</form-bean>

</form-beans>

?

3<global-exception>元素

<global-exception>用于配置异常处理,

<global-exception>元素可以包含零个或者多个<exception>元素。

?

<exception>元素用来设置java异常和异常处理类org.apache.struts.action,Exception Hander之间的映射。?

?

4<gloable-forwards>元素

<global-forwards>元素用来声明全局的转发关系,

<global-forwards>有零个或多个<forward>元素组成。

?

<forward>元素用于把一个逻辑映射到特定的URL 属性 描 述 className 和<forward>元素对应的配置类,默认为org.apache.struts.action.ActionForWard?

name 转发路径的逻辑名,此项时必须的

path 指定或者重定向的URI。此项时必须的,必须以”/”开头

redirect此项是true,表示是执行重定向的动作,此项是false时,表示请求转发。

?

<global-forwards>

<forward name="forward1" path="/Action1.do" />

<forward name="forward1" path="/Action2.do" />

</global-forwards>

?

如果jsp1.jsp把请求转发给Action1,可以使用以下代码:

<html:link forward=”forward1”>或者<logic:forward name=”forward1”>

如果Action1的execute()方法把请求转发给JSP2.jsp,可以使用一下代码:

return(mapping.findForward(“forward2”))

?

5<action-mapping>元素

<action-mapping>元素包含零个或者多个<action>元素。

<action>元素描述了从特定的请求路径到相应的Action类的映射。

?

6<controller>元素

<controller>元素用于配置ActionServlet。

?

7<message-resources>元素

<message-resources>元素用于配置Resource Bundle,ResourceBudle用于存放本地化消息文件。

?

ActionForm 的要求

创建一个ActionForm 并不困难,但是你的类必须符合一些要求:

ActionForm必须扩展自org.apache.struts.ActionForm。基类ActionForm是不能实例化的。

?

?

发表评论
用户名: 匿名