当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:12:00  来源:本站整理

Spring Web Flow 2.0入门 - 用subflow实现增添商品到购物车功效[Java编程]

赞助商链接



  本文“Spring Web Flow 2.0入门 - 用subflow实现增添商品到购物车功效[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

商品已经有列表了,接下来就要增添把商品放入购物车的功效,在本示例顶用 subflow 来实现这一功效,操作步骤以下:

实现 Cart 和 CartItem 两个业务类

在 shopping.xml 中增添配置

在 /WEB-INF/flows 目录下增添 addToCart.xml

在 webflow-config.xml 中增添 addToCart.xml 的位置

改正 viewCart.jsp 页面

实现 Cart 和 CartItem 两个业务类

CartItem 表示存放于购物车中的条目,主要记录像应商品及商品数目,同时不要忘掉录现 java.io.Serializable 接口,见清单 29:

清单 29 CartItem 类

package samples.webflow;
import java.io.Serializable;
public class CartItem implements Serializable {
   private static final long serialVersionUID = 8388627124326126637L;
   private Product product;
   private int quantity;
   public CartItem(Product product, int quantity) {
     this.product = product;
     this.quantity = quantity;
   }
   public int getTotalPrice() {
     return this.quantity * this.product.getPrice();
   }
   public void increaseQuantity() {
     this.quantity++;
   }
   /*省略getter和setter*/
}

除去呼应的属性外, CartItem 可按照商品的数目算出该商品的总价钱( getTotalPrice ),也可通过 increaseQuantity 增添商品数目.

Cart 是购物车的实现类,其一样要实现 java.io.Serializable 接口,但它没有像 ProductService 一样成为由 Spring IoC 容器管理的 Bean ,每个客户的购物车是差别的,因此不能利用 Spring IoC 容器默许的 Singleton 情势.见清单 30:

清单 30 Cart 类

package samples.webflow;
/* 省略 import 语句 */
public class Cart implements Serializable {
   private static final long serialVersionUID = 7901330827203016310L;
   private Map<Integer, CartItem> map = new HashMap<Integer, CartItem>();
   public List<CartItem> getItems() {
     return new ArrayList<CartItem>(map.values());
   }
   public void addItem(Product product) {
     int id = product.getId();
     CartItem item = map.get(id);
     if (item != null)
       item.increaseQuantity();
     else
       map.put(id, new CartItem(product, 1));
   }
   public int getTotalPrice() {
     int total = 0;
     for (CartItem item : map.values())
       total += item.getProduct().getPrice() * item.getQuantity();
     return total;
   }
}

Cart 主要实现三个业务函数, getItems 用于获得当前购物车里的物品, addItem 用于向购物车增添商品, getTotalPrice 用于获得购物车里全部商品的总价钱.


  以上是“Spring Web Flow 2.0入门 - 用subflow实现增添商品到购物车功效[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 在Ubuntu管理iPhone/iPod SpringBoard图标
  • Visual C++ sprintf()函数用法
  • 发扬EJB、Spring思惟将组件化举行到底
  • spring在MVC层办理JPA的缓迟加载问题
  • 用spring简单实现发送邮件
  • 用Spring framework实现按时器功效
  • 关于Struts和Spring两种MVC框架的比较
  • Spring自动装配的学习
  • Spring事件配置的五种办法
  • Spring编程入门十大问题解答
  • Hibernate+Spring+Struts扩大Struts
  • J2EE新手入门之"Spring"名词注释
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .