struts的基本配置总结
- 格式:docx
- 大小:17.60 KB
- 文档页数:6
Struts的基本配置总结第一章Structs的基本配置1.为Structs应用配置Web.xml文件第一步:配置ActionServlet<servlet><servlet-name>action</servlet-name><servlet-class>org.appache.structs.ActionServlet</servlet-class></servlet><servlet-mapping><servlet-name>action</servlet-name><uri-pattern>*.do</url-pattern></servlet-mapping>注意:不管应用中包含多少个子应用,都只需配置一个ActionServlet,因为ActionServlet支持多线程,目前的Structs框架只允许在应用中配置一个ActionServlet。
第二步:初始化参数对Servlet的运行环境进行初始化配置。
<servlet><servlet-name> action</servlet-name><servlet-class> org.appache.structs.ActionServlet </servlet-class><init-param><param-name>config</param-name><param-value>/WEB-INF/structs-config.xml</param-value></init-param></servlet>表2-1. Struts1.1中用到的初始化参数参数名含义/默认值config 以相对路径的方式指明Struts应用程序的配置文件位置。
如不设置,则默认值为/WEB-INF/struts-config.xml。
config/sub1 以相对路径的方式指明子应用程序的配置文件位置,一般来说,很少用到子应用程序,在此不多描述。
debug 设置Servlet的debug级别,控制日志记录的详细程度。
默认为0,记录相对最少的日志信息。
detail 设置Digester的debug级别,Digester是Struts框架所使用的用来解析xml 配置文件的一个框架,通过该设置,可以查看不同详细等级的解析日志。
默认为0,记录相对最少的日志信息。
第三步:配置欢迎清单当客户访问Web应用时,如果仅仅给出Web应用的Root URL,没用指定具体的文件名,Web容器会自动调用Web应用的欢迎文件。
<welcome-file-list><welcome-file>welcome.jsp</welcome-file><welcome-file>index.jsp</welcome-file></welcome-fiel-list>说明:<welcome-file-list>可以包含多个<welcome-file>子元素,首先查找第一个<welcome-file>文件。
由于<welcome-file-list>元素中不能配置Servlet映射,因此不能直接把Structs 的Action作为欢迎文件,可以采用一种变通的方法来实现在欢迎文件中调用Structs Action。
首先,在Structs配置文件中为被调用的Action创建一个全局的转发项,例如:<global-forwards><forward name=”welcome”path=”HelloWord.do”/></global-forwords>创建一个welcome.jsp的文件最后在web.xml文件中把welcome.jsp文件配置为欢迎文件,代码如下:<welcome-file-list><welcome-file>welcome.jsp</welcome-file></welcome-file-list>第四步:配置错误处理<error-page><error-code>404</error-code><location>/commom/404.jsp</location></error-page><error-page><error-code>505</error-code><location>/commom/505.jsp</location></error-page>也可以为Web容器捕获的Java异常配置<error-page>,需要设置<exception-type>子元素,它用于指定Java异常类。
Web容器可能捕获如下异常:RuntimeException或Error ServletException或它的子类 IOException或它的子类<error-page><exception-type>java.io.IOException</exception-type><location>/common/system_ioerror.jsp</location></error-page>第五步:配置Structs标签库使用客户化的标签库,要配置它们<taglib><tag-uri>/WEB-INF/structs-html.tld<tag-uri><taglib-location>/WEB-INF/structs-html.tld</taglib-location></taglib><tag-uri>用于指定标签库的相对或者绝对URI地址,Web应用根据这一URI来访问标签库。
<taglib-location>指定标签描述文件在文件资源系统中的物理位置。
2 Structs配置文件Structs框架在启动时会读入其配置文件,根据它来创建和配置各种Structs组件。
1<Structs-config>元素<structs-config>元素是Structs配置文件的根元素,<structs-cofig>元素有8个子元素。
它的DTD定义如下:<!ELEMENT structs-config(data-sources?,formbean?,global-exeception?,global-for ward?,action-mapping,controller?,message-resources*,plug-in*)>在Struts配置中,必须按照以上的DTD指定的先后顺序来配置<Structs-config>元素的各个子元素,如果颠倒了这些元素的配置文件中的位置,在Structs应用启动时会生成错误。
<data-sources>元素<data-sources>元素包含零个、一个或者多个<data-sources>子元素,<data-sources>用于配置特定的数据源,它可以包含多个<set-property>子元素,用于设置数据源的各种属性。
配置了数据源后,就可以在Action类中访问数据源,在org.apache.structs.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.structs.action.DynaAction"> <from-property name="firstname" type="ng.String"/><form-property name="secondname" type="ng.String"><form-property name="age" type="java.Integer" initial="18"></form-beans>3<global-exception>元素<global-exception>用于配置异常处理,<global-exception>元素可以包含零个或者多个<exception>元素。