struct-config.xml配置文件的解析

//定义了xml文件的版本和编码<?xml version="1.0" encoding="UTF-8"?>//配置文件中的元素必须按照下述doc指令中的dtd文档定义顺序书写,本例即遵从了dtd定义顺序,struct-config是整个xml的根元素,其他元素必须包含在内。
<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
          "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<struts-config>//这个标签是用来配置数据源的,具体的配置方法我们可以在网上找一个实例进行查看,可以通过<set-property>设置driverClass、url、user、password等属性。
  <data-sources />//子元素form-beans用来配置绑定到Action的各个FormBean的实例。每个FormBean实例用form-bans的子元素form-bean来定义。form-bean又分普通的FormBan和动态FormBean。参考该网址:http://www.cnblogs.com/panjun-Donet/articles/1181811.html
  <!-- 注册ActionForm -->
  <form-beans>
      <form-bean name="userForm" type="com.lyq.struts.form.UserForm"/>
      <form-bean name="medForm" type="com.lyq.struts.form.MedicineForm"/>
      <form-bean name="categoryForm" type="com.lyq.struts.form.CategoryForm"/>
      <form-bean name="sellDetailForm" type="com.lyq.struts.form.SellDetailForm"/>
  </form-beans>//global-forwards用于配置全局转发,struts首先会在<action-mappings>元素中找对应的<forward>,若找不到,则到全局转发配置中找。它包含0个或多个<forward/>元素,格式如///下所示:<forward name="唯一的名称" path="指向资源的相对路径"/  <global-exceptions />
  <!-- 全局跳转 -->
  <global-forwards>
      <forward name="login" path="/login.jsp" redirect="true"/>
      <forward name="buy" path="/sell/sell.do?command=add"/>
      <forward name="error" path="/error.jsp"/>
      <forward name="manage" path="/manager.jsp"/>
  </global-forwards>// 该元素用于将Action元素定义到ActionServlet类中,它含有0到多个<action/>元素,其格式如下:// scope:指定ActionForm Bean的作用域(session和request),缺省为session。(可选);
  <action-mappings>
      <!-- 用户登录 -->
    <action path="/login"
            type="com.lyq.struts.action.LoginAction"
            name="userForm"
            scope="request">
        <forward name="loginFail" path="/login.jsp"/>
    </action>
    <!-- 语言选择 -->
    <action path="/language"
            type="com.lyq.struts.action.LanguageAction"
            scope="request" />
    <!-- 类别 -->
    <action path="/baseData/category"
            type="com.lyq.struts.action.CategoryAction"
            name="categoryForm"
            scope="request"
            parameter="command">
        <forward name="paging" path="/baseData/category.do?command=paging" />
        <forward name="findAllSuccess" path="/baseData/category_list.jsp" />
        <forward name="edit" path="/baseData/category_add.jsp" />
        <forward name="categoryGraph" path="/baseData/category_graph.jsp" />
    </action>
    <!-- 药品 -->
    <action path="/baseData/med"
            type="com.lyq.struts.action.MedicineAction"
            name="medForm"
            scope="request"
            parameter="command">
        <forward name="addSuccess" path="/baseData/med.do?command=paging" />
        <forward name="findAllSuccess" path="/baseData/med_list.jsp" />
        <forward name="view" path="/baseData/med_view.jsp" />
        <forward name="add" path="/baseData/med_add.jsp" />
        <forward name="medUpdate" path="/baseData/med_update.jsp" />
        <forward name="medSave" path="/baseData/med_save.jsp" />
        <forward name="canSellMeds" path="/baseData/med_sell.jsp" />
    </action>
    <!-- 删除药品信息 -->
    <action path="/baseData/deleteMedicineAction"
            type="com.lyq.struts.action.DeleteMedicineAction"
            parameter="command">
        <forward name="findAllSuccess" path="/baseData/med.do?command=paging" />
    </action>
    <!-- 药品需求 -->
    <action path="/require/require"
            type="com.lyq.struts.action.RequireAction"
            name="medForm"
            scope="request"
            parameter="command">
        <forward name="addSuccess" path="/require/require.do?command=paging" />
        <forward name="findAllSuccess" path="/require/req_list.jsp" />
        <forward name="medUpdate" path="/require/req_update.jsp" />
        <forward name="medSave" path="/require/req_save.jsp" />
        <forward name="add" path="/require/req_add.jsp" />
        <forward name="view" path="/baseData/med_view.jsp" />
    </action>
    <!-- 删除药品需求信息 -->
    <action path="/require/deleteReqMedAction"
            type="com.lyq.struts.action.DeleteReqMedAction"
            parameter="command">
        <forward name="findAllSuccess" path="/require/require.do?command=paging" />
    </action>
    <!-- 销售 -->
    <action path="/sell/sell"
            type="com.lyq.struts.action.SellAction"
            name="sellDetailForm"
            scope="request"
            parameter="command">
        <forward name="add" path="/sell/sell_add.jsp" />
        <forward name="order" path="/sell/sell_order.jsp" />
        <forward name="paging" path="/sell/sell.do?command=paging" />
        <forward name="findAllSuccess" path="/sell/sell_list.jsp" />
        <forward name="sequence" path="/sell/sell_seq_list.jsp" />
    </action>
    <!-- 系统管理 -->
    <action path="/system/system"
            type="com.lyq.struts.action.SystemAction"
            name="userForm"
            scope="request"
            parameter="command">
        <forward name="userFind" path="/system/system.do?command=userFind" />
        <forward name="findAllSuccess" path="/system/user_list.jsp"/>
        <forward name="userEdit" path="/system/user_add.jsp"/>
    </action>
  </action-mappings>//该元素用来定义资源文件,parameter="给定资源文件的全名"/*

<message-resources parameter="给定资源文件的全名" classname="定义处理消息资源的类名的全名"  factory="定义MessageResourcesFactory类的全名"  key="定义绑定在这个资源包中的ServletContext的属性主键"  null=" 如果为true,则找不到消息key时,则返回null "/>

*/
  <message-resources parameter="com.lyq.struts.MessageResources" />
</struts-config>

plug-in

该元素用于定义插件,可定义0到多个插件元素,最常见的plug-in为Struts的验证的插件,配置举例如下:

Eg1. Struts的验证的plug-in:

<plug-in className="org.apache.struts.validator.ValidatorPlugIn">

<set-property property="pathnames"

value="/WEB-INF/validator-rules.xml, /WEB-INF/manager/validation.xml" />

<set-property property="stopOnFirstError" value="false" />

</plug-in>

Eg2. Spring提供的载入插件配置:

<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">

<set-property property="contextConfigLocation"

value="/WEB-INF/applicationContext.xml, /WEB-INF/action-servlet.xml"/>

</plug-in>

时间: 2024-10-30 22:28:02

struct-config.xml配置文件的解析的相关文章

Cordova V3.0.0中config.xml配置文件的iOS Configuration

http://www.cnblogs.com/lovecode/articles/3305655.html   轉載這個 <preference> 关于这个标签的可用设置有: DisallowOverscroll 布尔值,默认false.如果不想要WebView出现橡皮筋滚动条,则设置为true TopActivityIndicator   字符串值,默认gray.设置顶部状态栏的风格:whiteLarge, white, gray EnableLocation  布尔值, 默认false.

Mybatis3源码分析(三):解析mapper的xml配置文件

这一章我们来看看mybatis是怎么读取mapper的xml配置文件并解析其中的sql语句. 我们还记得是这样配置sqlSessionFactory的: <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" />

Spring框架[一]——spring概念和ioc入门(ioc操作xml配置文件)

Spring概念 spring是开源的轻量级框架(即不需要依赖其他东西,可用直接使用) spring核心主要两部分 aop:面向切面编程,扩展功能不是修改源代码来实现: ioc:控制反转,比如:有一个类,在类中有个方法(非静态的方法),要调用类中的这个方法,则需要创建类的对象,使用对象调用方法.创建类对象的过程,需要new出来对象:而ioc则是将对象的创建不是通过new方式实现,而是交给spring配置来创建对象(即,将对象的创建交给spring来管理): spring是一站式框架 spring

mybatis 解析配置文件(一)之XML的DOM解析方式

简介 在之前的文章<mybatis 初步使用(IDEA的Maven项目, 超详细)>中, 讲解了mybatis的初步使用, 并总结了以下mybatis的执行流程: 通过 Resources 工具类读取 mybatis-config.xml, 存入 Reader: SqlSessionFactoryBuilder使用上一步获得的reader创建SqlSessionFactory对象; 通过 sqlSessionFactory 对象获得SqlSession; SqlSession对象通过selec

Spring配置文件xml头信息解析一

我们在使用Spring框架的时候首先要配置其xml文件,大量的头信息到底代表了什么呢,在这里总结下自己的理解... 这里是创建web工程时自带的xml文件头内容: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org

Cordova 3.x 基础(5) -- 配置文件config.xml

原文:http://rensanning.iteye.com/blog/2019331 首先要注意的是:从3.3版本以后已经把www/config.xml移动到了根目录下. 在config.xml中定义的东西应该适应所有平台.在build工程的是时候,会看到“Generating config.xml from defaults for platform "android"”这样的字样,他会生成各个平台的config.xml. 生成的文件: Android:MyProject/plat

Mybatis 源码分析--Configuration.xml配置文件加载到内存

(补充知识点: 1 byte(字节)=8 bit(位) 通常一个标准英文字母占一个字节位置,一个标准汉字占两个字节位置:字符的例子有:字母.数字系统或标点符号) 1.创建SqlSessionFactory ①Reader reader = Resources.getResourceAsReader("mybatis-config.xml");                       //获取mybatis配置文件的字符 注解:Resources类是在mybatis中定义的一个类:g

用java操作XML文件(DOM解析方式)

XML 可扩展标记语言(Extensible Markup Language),是独立于软件和硬件的传输工具. XML的作用: (1)用作配置文件 (2)简化数据共享 (3)简化数据传输 XML DOM解析方式 在java工程中导入dom4j.jar包. (一)用java读XML文件 <1>创建SAXReader对象. RAXReader reader=new RAXReader(); <2>调用RAXReader的Document read(File file)方法,获取xml文

Android 5.0 system_fonts.xml文件的解析过程

Android 5.0 system_fonts.xml文件的解析过程 首先看看看5.0 中familyset version="22" 的格式 20 <family name="sans-serif"> 21 <font weight="100" style="normal">Roboto-Thin.ttf</font> 22 <font weight="100"