您的位置:首页 > 其它

Strust1之配置文件详解

2017-11-29 10:25 197 查看
想要使用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的位置。

<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/conf/struts-config.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>


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和Action,是整个Struts的核心。

<!-- 配置FormBean。 -->
<form-beans>
<form-bean name="LoginActionForm"        type="com.webapp.form.LoginActionForm">
</form-bean>
</form-beans>


这里的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>
里配置。

<global-forwards>
  <forward  name="forward1"  path="/a.do"/>
  <forward  name="forward2"  path="/b.jsp"/>
<global-forwards>


name表示转发或者重定向路径的名字。path表示转发或者重定向的路径,一般都是相对路径。

配置全局异常(Exception)

该元素主要配置异常处理,它的exception子元素代表全局的异常配置。struts采取配置的方式才操作异常,它用来设置java异常和异常处理类org.apache.struts.action.ExceptionHandler之间的映射。它有七个属性,如下所示:

1. className:指定和exception元素对应的配置类,默认为:org.apache.struts.config.ExceptionConfig。可有可无。
2. Handler:指定异常得理类,默认为:org.apache.struts.action.ExceptionHandler。可有可无
3. key:指定在Resource Bundle中描述该异常的消息key
4. path:指定当异常发生时的转发路径。
5. scope:指定ActionMessages实例的存放范围,可选值包括:request和session,默认为request。可有可无。
6. type:指定所需处理异常类的名字,必须。
7. bundle:指定Resource Bundle


<global-exceptions>
  <exception
      key="global.error.invalidlogin"
      path="/error.jsp"
      scope="request"
      type="com.hn.tree"/>
</global-exceptions>


配置控制器(Controller)

该元素用于配置ActionServlet。它具有以下属性。

  

1. 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


<controller
  contentType="text/html;charset="UTF-8""
  locale="true"
  processorClass="con.ok"/>


配置信息资源

主要配置本地化消息文本,它具有以下属性。

  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" />


配置插件

<plug-in className="org.apache.struts.tiles.TilesPlugin" >
<set-property property="definitions-config" value="/WEB-INF/tiles-def.xml" />
</plug-in>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: