`
sunnymoon
  • 浏览: 89298 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[开源项目系列]JpetStore5.0 之 struts-config.xml配制文件

阅读更多

<?xml version="1.0" encoding="UTF-8" ?>

<!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>
  <!-- 
  [开源项目系列]JpetStore5.0 之 struts-config.xml配制文件
  定义表单对像JavaFormBeans,本质上属于JavaBeans,在很多应用中只是起到传递用户请求参数
  并将其封装转发给Action使用。但是在JpetStore中,将真正的业务逻辑方法也封装在此类中,
  另外加上对Action的巧妙设计,整个系统只有一个Action类,用类似IOC依赖注入的方法调用
  在JavaFormBeans中的业务方法。
  1. AccountBean: 引用了Account类,其封装了用户的详细信息。AccountBean封装了业务方法
     如:新建用户,登陆,注销,编辑用户信息等操作。
  2. CatalogBean: 引用了Catagory和Product类,其封装了种类信息和产品信息。CatalogBean类
     封装了业务方法如:查看某一类型的产品,查看具体某一产品信息,查找产品等。
  3. CartBean:引用了Cart类,封装了购物车的信息。CartBean类封装了购物操作。
     如:将产品增加购物车,将产品移除购物车,查看购物车,结账等购物操作。
  4. OrderBean:引用了Order类,封装了订货单的信息。OrderBean类封装了结账生成账单之后
     付款的操作。如:编辑订购单,成订购单,提交订购单。
   -->
  <form-beans>
    <form-bean name="accountBean" type="com.ibatis.jpetstore.presentation.AccountBean"/>
    <form-bean name="catalogBean" type="com.ibatis.jpetstore.presentation.CatalogBean"/>
    <form-bean name="cartBean" type="com.ibatis.jpetstore.presentation.CartBean"/>
    <form-bean name="orderBean" type="com.ibatis.jpetstore.presentation.OrderBean"/>
  </form-beans>
    <!-- 
     定义全局异常处理
    -->
  <global-exceptions>
    <exception key="errors.general" type="java.lang.Exception" path="/common/Error.jsp"/>
  </global-exceptions>
  <!-- 
     定义全局转发
    -->
  <global-forwards>
    <forward name="failure" path="/common/Error.jsp"/>
    <forward name="error" path="/common/Error.jsp"/>
    <forward name="signon" path="/account/SignonForm.jsp"/>
    <forward name="newOrderForm" path="/shop/newOrderForm.shtml"/>
  </global-forwards>
  <!-- 
     在框架内进行流程控制,作用是将请求的URI映射到具体的Action,并且将Action与
     ActionFormBean相关联。
     path:配制访问URI地址。
     type:配制处理请求的Action类的全路径。
     name:使用ActionFormBean。
     forward:定义转发,公可被当前的Action所使用。
     message-resources:消息资源文件,对应的资源文件的根目录为src。
     plug-in:通常用于将插件增加到Struts控制器中。Struts插件使用多用于分配资源或者
     数据库备份连接资源或者是JNDI资源。如果要对插件部分进行全面了了解需要有一个专题来
     阐述。
     另外:
     scope:可定义ActionFormBean的有效范围。
    -->
  <action-mappings>
  <!-- 
    主应用。当访问/shop/index.shtml的地址,服务器返回/catalog/Main.jsp内容。     
    -->
    <action path="/shop/index" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" parameter="*" validate="false">
      <forward name="success" path="/catalog/Main.jsp"/>
    </action>

    <!-- CATALOG ACTIONS -->
    <!-- 
     搜索功能。当访问/shop/searchProducts地址,服务器返回/SearchProducts.jsp
     -->
    <action path="/shop/searchProducts" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false">
      <forward name="success" path="/catalog/SearchProducts.jsp"/>
    </action>
    <!-- 
     搜索列表视图功能。
     -->
    <action path="/shop/switchSearchListPage" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session" parameter="switchProductListPage"
            validate="false">
      <forward name="success" path="/catalog/SearchProducts.jsp"/>
    </action>
    <!-- 
     查看种类功能。当访问/shop/viewCategory地址,
     服务器返回/catalog/Category.jsp
     -->
    <action path="/shop/viewCategory" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false">
      <forward name="success" path="/catalog/Category.jsp"/>
    </action>
    <!-- 
     产品列表视图功能。
     -->
    <action path="/shop/switchProductListPage" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false">
      <forward name="success" path="/catalog/Category.jsp"/>
    </action>
    <!-- 
     查看产品列表功能。当访问/shop/viewProduct.shtml地址,
     服务器返回/catalog/Product.jsp
     -->
    <action path="/shop/viewProduct" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false">
      <forward name="success" path="/catalog/Product.jsp"/>
    </action>
    <!-- 
     产品项列表视图功能。
     -->
    <action path="/shop/switchItemListPage" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false">
      <forward name="success" path="/catalog/Product.jsp"/>
    </action>
    <!-- 
     查看产品项功能。当访问/shop/viewProduct.shtml地址,
     服务器返回/catalog/Product.jsp
     -->
    <action path="/shop/viewItem" type="org.apache.struts.beanaction.BeanAction"
            name="catalogBean" scope="session"
            validate="false" input="/catalog/Product.jsp">
      <forward name="success" path="/catalog/Item.jsp"/>
    </action>

    <!-- CART ACTIONS -->
    <!-- 
     增加产品到购物车功能。
     当访问/shop/addItemToCart.shtml地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/addItemToCart" type="org.apache.struts.beanaction.BeanAction"
            name="cartBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>
    <!-- 
     移除产品从购物车功能。
     当访问/shop/removeItemToCart.shtml地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/removeItemFromCart" type="org.apache.struts.beanaction.BeanAction"
            name="cartBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>
    <!-- 
     更新购物车功能。
     当访问/shop/updateCartQuantities地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/updateCartQuantities" type="org.apache.struts.beanaction.BeanAction"
            name="cartBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>
    <!-- 
     付账功能。
     当访问/shop/check.shtml地址,服务器返回/cart/Checkout.jsp
     -->
    <action path="/shop/checkout" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session" parameter="newOrderForm"
            validate="false" >
      <forward name="success" path="/cart/Checkout.jsp"/>
    </action>
    <!-- 
     查看购物车功能。
     当访问/shop/viewCart.shtml地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/viewCart" type="org.apache.struts.beanaction.BeanAction"
            name="cartBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>
    <!-- 
     改变购物车视图功能。
     当访问/shop/switchCartPage地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/switchCartPage" type="org.apache.struts.beanaction.BeanAction"
            name="cartBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>
    <!-- 
     改变购我的列表视图功能。
     当访问/shop/switchMyListPage.shtml地址,服务器返回/cart/Cart.jsp
     -->
    <action path="/shop/switchMyListPage" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="false">
      <forward name="success" path="/cart/Cart.jsp"/>
    </action>

    <!-- ACCOUNT ACTIONS -->
    <!-- 
     新建用户表单功能。
     当访问/shop/newAccountForm.shtml地址,服务器返回/accountnt/NewAccountForm.jsp
     -->
    <action path="/shop/newAccountForm" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session" parameter="*"
            validate="false">
      <forward name="success" path="/account/NewAccountForm.jsp"/>
    </action>
    <!-- 
     新建用户功能。
     当访问/shop/newAccount.shtml地址,服务器返回/accountnt/NewAccount.jsp
     -->
    <action path="/shop/newAccount" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="true" input="/account/NewAccountForm.jsp">
      <forward name="success" path="/shop/index.shtml"/>
    </action>
    <!-- 
     编辑用户表单功能。
     当访问/shop/editAccountForm.shtml地址,服务器返回/accountnt/EditAccountForm.jsp
     -->
    <action path="/shop/editAccountForm" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="false">
      <forward name="success" path="/account/EditAccountForm.jsp"/>
    </action>
    <!-- 
     编辑用户功能。
     当访问/shop/editAccount.shtml地址,服务器返回/accountnt/EditAccount.jsp
     -->
    <action path="/shop/editAccount" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="true" input="/account/EditAccountForm.jsp">
      <forward name="success" path="/shop/index.shtml"/>
    </action>
    <!-- 
     用户登陆输入表单功能。
     当访问/shop/signonForm.shtml地址,服务器返回/accountnt/SignonForm.jsp
     -->
    <action path="/shop/signonForm" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session" parameter="*"
            validate="false">
      <forward name="success" path="/account/SignonForm.jsp"/>
    </action>
    <!-- 
     用户登陆功能。
     当访问/shop/signon.shtml地址,服务器返回/accountnt/Signon.jsp
     -->
    <action path="/shop/signon" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="false">
      <forward name="success" path="/shop/index.shtml"/>
    </action>
    <!-- 
     用户注销功能。
     当访问/shop/signoff.shtml地址,服务器返回/shop/index.jsp
     -->
    <action path="/shop/signoff" type="org.apache.struts.beanaction.BeanAction"
            name="accountBean" scope="session"
            validate="false">
      <forward name="success" path="/shop/index.shtml"/>
    </action>

    <!-- ORDER ACTIONS -->
    <!-- 
     添加订货表单功能。
     当访问/shop/newOrderForm地址,服务器返回/order/NewOrderForm.jsp
     -->
    <action path="/shop/newOrderForm" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session"
            validate="false">
      <forward name="success" path="/order/NewOrderForm.jsp"/>
    </action>
    <!-- 
     添加订货功能。
     当访问/shop/newOrder地址,服务器返回/order/ConfirmOrder.jsp
     -->
    <action path="/shop/newOrder" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session"
            validate="true" input="/order/NewOrderForm.jsp">
      <forward name="confirm" path="/order/ConfirmOrder.jsp"/>
      <forward name="shipping" path="/order/ShippingForm.jsp"/>
      <forward name="success" path="/order/ViewOrder.jsp"/>
    </action>
    <!-- 
     查看订货单列表功能。
     当访问/shop/listOrders.shtml地址,服务器返回/order/ListOrders.jsp
     -->
    <action path="/shop/listOrders" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session"
            validate="false">
      <forward name="success" path="/order/ListOrders.jsp"/>
    </action>
    <!-- 
     改变订货单页面功能。
     当访问/shop/switchOrderPage地址,服务器返回/order/ListOrders.jsp
     -->
    <action path="/shop/switchOrderPage" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session"
            validate="false">
      <forward name="success" path="/order/ListOrders.jsp"/>
    </action>
    <!-- 
     查看订货单功能。
     当访问/shop/viewOrder.shtml地址,服务器返回/order/ViewOrder.jsp
     -->
    <action path="/shop/viewOrder" type="org.apache.struts.beanaction.BeanAction"
            name="orderBean" scope="session"
            validate="false">
      <forward name="success" path="/order/ViewOrder.jsp"/>
    </action>

  </action-mappings>
  <!-- 资源文件 -->
  <message-resources parameter="properties.messages"/>
  <!-- 验证插件 -->
  <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
    <set-property
        property="pathnames"
        value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
  </plug-in>

</struts-config>

 

5
1
分享到:
评论

相关推荐

    JPetStore-5.0.zip_JPETSTO_jpetstore-5_jpetstore5_jpetstore5.0_jp

    JPetStore-5.0是一个著名的开源项目,它基于iBatis数据持久层框架,为开发者提供了一个完整的电子商务应用程序示例。这个项目由Apache Software Foundation维护,是学习和理解Java Web开发、MVC设计模式以及iBatis...

    jpetstore_autom7-源码.rar

    在源码中,可以找到Spring的配置文件(如applicationContext.xml),定义了bean的实例化、初始化以及依赖关系。这种方式使得代码更易于理解和维护,同时也方便了单元测试。 除了上述核心技术外,jpetstore_autom7...

    iBatis-JPetStore-5.0

    在本教程中,我们将通过“iBatis-JPetStore-5.0”项目来深入理解iBatis的核心概念和功能。 **1. iBatis概述** iBatis是一个轻量级的ORM(对象关系映射)框架,它的主要目标是简化Java应用中的数据库操作。它不完全...

    Jpetstore-Stuts Shoping cart

    Struts通过ActionForm、控制器Servlet(ActionServlet)以及一系列配置文件(struts-config.xml)来协调各个组件的工作。 **2. Jpetstore的架构** Jpetstore项目主要包含以下几个部分: - **模型(Model)**:这...

    jpetstore-3-1-1

    在jpetstore中,我们可以看到Action类和配置文件(struts-config.xml)的运用,这些都是Struts的核心组成部分。 3. **数据库交互**:项目包含了"ddl"目录,这通常包含了数据库的DDL(Data Definition Language)...

    jpetstore-4.0.3.zip_JPetStore 4_JPetStore.zip_JpetStore 4.0 _jpe

    JPetStore是Mifos公司开发的一个开源项目,它是一个基于Struts框架的Java Web应用程序,用于展示轻量级企业应用平台(Lightweight Enterprise Application Platform, LEAP)的架构。这个项目的核心目的是为了教学和...

    jpetstore系统架构图

    通过ActionServlet接收客户端请求,根据Struts-config.xml配置文件中的规则将请求映射到相应的Action对象,进而调用业务逻辑层进行处理。 2. **业务逻辑层**:包含系统的核心业务逻辑,通过BeanAction等组件与数据...

    jpetstore-6.war

    使用了mybatis的jpetstore-6

    JPetStore-5.0

    JPetStore-5.0项目是学习STRUTS2框架的理想实践案例,它展示了STRUTS2如何处理Web请求、管理业务逻辑以及呈现视图。通过研究这个项目,开发者可以深入了解STRUTS2的架构设计、拦截器机制以及MVC模式在实际应用中的...

    Struts+Spring+Hibernate实现的jpetstore

    1. **配置文件**:如struts-config.xml,spring的beans.xml,hibernate的hibernate.cfg.xml等,它们定义了各框架的配置和组件。 2. **实体类**:表示数据库表的Java类,通常包含对应的Hibernate注解。 3. **DAO接口...

    ibatis入门,Ibatis开发指南,JPetStore-5.0

    本篇文章将深入探讨iBatis的核心概念、功能特性以及如何通过JPetStore-5.0这个经典示例来学习和掌握iBatis。 1. iBatis简介: iBatis是由Clinton Begin创建的一个开源项目,最初设计用于简化Java中的数据库操作。它...

    jpetstore宠物店程序

    通过定义Action类和配置Struts-config.xml文件,我们可以指定URL请求对应的处理方法和页面跳转。 2. **Spring框架** Spring作为一个全面的后端开发框架,提供了依赖注入、AOP(面向切面编程)、事务管理等功能。在...

    SQL+Jpetstore配置

    JPetStore是一个广泛使用的开源示例应用程序,旨在演示企业级Java应用的构建过程。本文档将详细介绍如何在使用Oracle数据库时配置JPetStore,并解决配置过程中可能出现的问题。此外,本文还将提供关于JPetStore 5.0...

    ssh框架在application.xml中配置数据源所需jar

    &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!-- - Application context definition for JPetStore's business layer. - Contains bean references to the transaction manager and to the DAOs in - ...

    jpetstore4.0 (spring+struts+ibatis)

    《基于Spring、Struts和iBatis的jpetstore4.0详解》 jpetstore4.0是一款经典的电子商务示例应用,它采用Spring、Struts和iBatis这三个核心框架构建,展示了如何在Java环境下实现一个完整的MVC(Model-View-...

    Spring 配置

    1.创建web工程 2.导入jar spring-framework-2.5.6\dist\spring.jar spring-framework-2.5.6\lib\jakarta-commons\commons-logging.jar spring-framework-2.5.6\lib\log4j\log4j-...\WEB-INF\applicationContext.xml

    Java petstore安装部署文档

    在MySQL的bin目录下,使用提供的SQL脚本文件:`jpetstore-mysql-schema.sql`用于创建数据库结构,`jpetstore-mysql-dataload.sql`用于填充初始数据,而`jpetstore-mysql-create-user.sql`则用来分配用户权限。...

    前端-后端java的Util类的工具类

    │ struts.xml │ ├─28个java常用的工具类 │ │ Base64.java │ │ Base64DecodingException.java │ │ CConst.java │ │ CharTools.java │ │ ConfigHelper.java │ │ Counter.java │ │ CTool.java │ │...

    Jpetstore在eclipse下的配置

    文件列表中的`JPetStore-5.0`可能是JpetStore的源代码。通过“File” -&gt; “Import” -&gt; “Existing Projects into Workspace”,选择项目的根目录,确保“Copy projects into workspace”选项被选中,然后点击...

Global site tag (gtag.js) - Google Analytics