• Struts配置文件初解


    struts-config.xml是Struts的核心文件。该文件可配置各种组件,包括,FormBeans,Actions,ActionMappings,全局转发GlobalForwards,数据源DataSources及插件Plugin,这篇文件我结合在(Struts重构)构建一个简单的基于MVC模式的JavaWeb一文来说说Struts配置文件struts-config.xml的主要元素!
    <form-beans>元素
    <form-beans>元素允许配置多个ActionForm类,可以包含零个或多个<form-bean>子元素。其主要元素如下所示:
    calssName :可选。指定和<form-bean>元素对应的配置类,默认值这org.apache.struts.config.FormBeanConfig,自定义的配置类必须扩展该类。
    name:指定该ActionForm的惟一标识名,Struts框架用该标识来引用这个form bean,该属性必须填写!
    type:指定ActionForm的完整类路径和类名,该属性必须填写!
    例子:
    <form-bean name="studentForm" type="struts.form.StudentForm" />
    如果配置动态ActionForm(DynaActionForm),则还必须配置<form-bean>元素的<form-property>子元素,用来指定表单字段,
    例子:
    <form-bean name="dynaFormForm" type="org.apache.struts.action.DynaActionForm ">
          
    <form-property name="userName" type="java.lang.String" />
          
    <form-property name="userPwd" type="java.lang.String" />
    </form-bean>

    <action-mappings>元素
    <action-mappings>元素帮助进行框架内部的流程控制,可以将 请求URI映射到Action类,将Action对象与ActionForm对象相关联。
    <action-mappings>元素内可定义多个<action>子元素。<action>元素所描述的是特定的请求路径和一个相应的Action类之间的映射关系。Struts控制器会将请求中的URI路径与诸多<action>元素中的path属性相匹配,以选出一个特定的映射。其有以下属性:
    attribute:设置和Action关联的form bean在request/session内的属性key,通过request/session的getAttribute(attribute)方法返回该form bean实例。
    className:和<action>元素对应的配置元素。默认为org.apache.struts.action.ActionMapping
    forward:指定局部转发项。
    include:指定包含的URL路径。
    input:指定表单输入页的URL路径。当表单验证失败时将请求转发到该URL。
    name:指定同该Action关联的form bean的引用标识。
    path:指定Action的访问路径,即该Action在引用中的标识名,以"/"开头。
    parameter:指定允许调用该Action的参数。在Action类的execute()方法中调用ActionMapping对象的getParameter()方法来读取。
    roles:指定允许调用该Action类关联的安全角色。多个角色之间用逗号分隔。
    scope:指定同该Action类关联的form bean的存在范围。可选request和session,默认为session.
    type:指定该Action类的完整类路径和类名。
    unknown:若该属性为true,则可以处理用户发出的无效ActionURL.默认为false。
    validate:指定是否调用form bean的validate()方法验证表单的数据。默认为true


    另外<action>元素中可包含零个或多个<forward>子元素。<forward>子元素定义了转发动作。它的主要属性如下:
    name:指定转向的标识名。
    path:指定转向标识名所对应的转向页面
    redirect:指定是转发还是重定向。
    例:

    <action-mappings >
          
    <action    attribute="dynaFormForm" 
              input
    ="/dynaForm.jsp"
              name
    ="dynaFormForm"
              path
    ="/dynaFormForm"          
              scope
    ="request"
              validate
    ="true"
              type
    ="struts.action.LoginHandlerAction">
              
    <forward name="success" path="/main.jsp" />
              
    <forward name="fail" path="/register.jsp" />
          
    </action>

    <global-forwards>元素
    <global-forwards>元素用于定义在整个应用程序内的全局转发。在该元素内可定义多个<forward>子元素。
    例:
    <!-- 全局转发 -->
      
    <global-forwards>
          
    <forward name="index" path="/index"></forward>
      
    </global-forwards>

    <message-resources>元素
      <message-resources>元素用于配置消息资源文件(Resources Bundle),以在应用客户端界面中输出本地化消息文本。其主要属性如下:
      className:指定和<form-bean>元素对应的配置类,默认值为org.apache.struts.config.MessageResourcesConfig
      factory:指定消息资源的工厂类,默认为org.apache.struts.util.PropertyMessageResourcesFactory
      key:指定资源文件存放在ServletContext对象中时使用的属性key。默认为Globals.MESSAGE_KEY定义的字符串常量
      null:指定MessageResources对未知消息的处理方式。若为true将返回空字符串,若为false则返回类似以"??global.label.missing???"字符串。默认为true。
      parameter:指定消息资源文件存放路径。
      例:
    <!-- 资源文件 -->
      
    <message-resources parameter="struts.ApplicationResources" />
                
    <!--存放在struts包下.注意不要写成struts/ApplicationResources-->

    <plug-in>元素
    主要用于定义添加至struts应用中的插件
    例:

        <!-- 验证插件 -->   
      
    <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        
    <set-property property="pathnames"  value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
      
    </plug-in>
  • 相关阅读:
    在linux下搭建wiki环境【转】
    GitLab版本管理【转】
    linux设备驱动中的并发控制【转】
    分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace【转】
    Git常用命令总结【转】
    Linux中断(interrupt)子系统之一:中断系统基本原理【转】
    大话Linux内核中锁机制之原子操作、自旋锁【转】
    自旋锁spin_lock和raw_spin_lock【转】
    Linux内核同步机制之(四):spin lock【转】
    spin_lock浅析【转】
  • 原文地址:https://www.cnblogs.com/eflylab/p/614287.html
Copyright © 2020-2023  润新知