Strust1之配置文件详解
想要使用Strust1只需要配置两个文件:web.xml和struts-config.xml
web.xml
- web.xml文件主要是安装Strust1的配置文件。
实际上,Struts的入口点是一个名为ActionServlet的Servlet。ActionServlet是总控制器,它是struts给我们提供的,我们无需自己写,只需要配置就可以了。在第一次访问Struts时,建立这个ActionServlet类的对象实例,并调用ActionServlet类中的init方法来进行初始化(其实是读取struts-config.xml文件中的内容,并根据struts-config.xml中的内容来初始化相关的资源)。因此,就要在web.xml文件中安装这个ActionServlet,并在ActionServlet的初始化参数中指定struts-config.xml的位置。
action
org.apache.struts.action.ActionServlet
config
/WEB-INF/conf/struts-config.xml
0 <servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
struts-config.xml
- struts-config.xml是struts的核心内容,只要是我们想要使用struts,就必须配置struts-config.xml这个文件。所有的配置参数都要放在
struts-config
这个根目录下。 最常用的配置大概是以下7种:
- FormBean:在
<form-beans>
元素中配置。 - Action映射:在
<action-mappings>
元素中配置。 - 全局Forwards:在
<global-forwards>
元素中配置。 - 全局异常(Exception):在
<global-exceptions>
元素中的配置。 - 控制器(Controller):在
<controller>
元素中配置。 - 信息资源:在
<message-resources>
元素中的配置。 - 插件:在
<plug-in>
元素中配置。
- FormBean:在
在日常开发中最重要的是FormBean和Action,是整个Struts的核心。
<form-bean name="LoginActionForm" type="com.webapp.form.LoginActionForm">
</form-bean>
这里的name是Form的名字,是唯一标示,这个name会在action中用到。type是Form所在的路径,由包名+类名所组成。
<!-- 配置Action。 -->
<action-mappings>
<action path="/Login"
name="LoginActionForm"
type="com.webapp.action.LoginAction"
scope="request">
<forward name="success" path="/LoginSuccess.jsp"></forward>
<forward name="error" path="/LoginFailed.jsp"></forward>
</action>
</action-mappings>
name是关联某个FormBean的唯一标示。path是将来访问该action的资源名,一般为http://localhost:8080/web/path
。type是Action的路径,由包名+类名组成。scope是指定FormBean所存在的范围,有session和request两种,默认是session。forward是路径跳转。
配置全局Forwards
全局Forwards在<global-forwards>
里配置。
name表示转发或者重定向路径的名字。path表示转发或者重定向的路径,一般都是相对路径。
配置全局异常(Exception)
该元素主要配置异常处理,它的exception子元素代表全局的异常配置。struts采取配置的方式才操作异常,它用来设置java异常和异常处理类org.apache.struts.action.ExceptionHandler之间的映射。它有七个属性,如下所示:- className:指定和exception元素对应的配置类,默认为:org.apache.struts.config.ExceptionConfig。可有可无。
- Handler:指定异常得理类,默认为:org.apache.struts.action.ExceptionHandler。可有可无
- key:指定在Resource Bundle中描述该异常的消息key
- path:指定当异常发生时的转发路径。
- scope:指定ActionMessages实例的存放范围,可选值包括:request和session,默认为request。可有可无。
- type:指定所需处理异常类的名字,必须。
- bundle:指定Resource Bundle
- className:指定和exception元素对应的配置类,默认为:org.apache.struts.config.ExceptionConfig。可有可无。
配置控制器(Controller)
该元素用于配置ActionServlet。它具有以下属性。- bufferSize:指定上载文件的输入缓冲大小,可选,默认为4096
2. className:指定和controller元素对应的配置类,默认为org.apache.struts.config.ControllerConfig
3. conentType:字符编码,如果在Action和JSP网页中设置了,则覆盖该设置。
4. locale:指定是否把Locale对象保存到当前用户的session中,默认值为false.
5. processorClass:指定负责请求的java类完整路径。
6. tempDir:指定处理文件的临时工作目录,如果此项没有设置,将采用Servlet容器为web应用分配的临时工作目录。
7. nochache:如果为true:在响应结果中将加入特定的头参数:Pragma,Cache-Control和Expise,防止页面被保存在客户端的浏览器中,默认为false
- bufferSize:指定上载文件的输入缓冲大小,可选,默认为4096
配置信息资源
主要配置本地化消息文本,它具有以下属性。
1. key:指定Resource Bundle存放的ServletContext对象中时采用的属性Key,默认由Globals.MESSAGES_KEY定义的字符串常量,只允许一个Resource Bundle采用默认的属性Key。
2. prameter:指定MessageSources的资源文件名,如果为:a.b.ApplicationResources,则实际对应的文件路径为:WEB-INF/classes/a/b/ApplicationResources.properties.
<message-resources
key="BRD"
parameter="jp.co.dreamarts.insuite.resources.BRD_Resources" />
配置插件
<set-property property="definitions-config" value="/WEB-INF/tiles-def.xml" />
</plug-in>
还没有评论,来说两句吧...