Strust1之配置文件详解

小鱼儿 2022-06-04 00:05 260阅读 0赞

想要使用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

    1. <servlet-name>action</servlet-name>
    2. <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和Action,是整个Struts的核心。

    1. <form-bean name="LoginActionForm" type="com.webapp.form.LoginActionForm">
    2. </form-bean>

这里的name是Form的名字,是唯一标示,这个name会在action中用到。type是Form所在的路径,由包名+类名所组成。

  1. <!-- 配置Action。 -->
  2. <action-mappings>
  3. <action path="/Login"
  4. name="LoginActionForm"
  5. type="com.webapp.action.LoginAction"
  6. scope="request">
  7. <forward name="success" path="/LoginSuccess.jsp"></forward>
  8. <forward name="error" path="/LoginFailed.jsp"></forward>
  9. </action>
  10. </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之间的映射。它有七个属性,如下所示:

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


      

  • 配置控制器(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
  • 配置信息资源

主要配置本地化消息文本,它具有以下属性。
  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.

  1. <message-resources
  2. key="BRD"
  3. parameter="jp.co.dreamarts.insuite.resources.BRD_Resources" />
  • 配置插件

    1. <set-property property="definitions-config" value="/WEB-INF/tiles-def.xml" />
    2. </plug-in>

发表评论

表情:
评论列表 (有 0 条评论,260人围观)

还没有评论,来说两句吧...

相关阅读

    相关 strust1strust2 区别

    1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Actio