快速业务通道

Eclipse+Struts+Hibernate的网络商店 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22
的订单,主要包括订单名,用户信息,订单的具体内容。

·订单项:代表订单中具体项,一个订单项包括一个商品的购买情况。

·购物车:代表用户的购物车,是一个虚拟的概念。

·购物车中的具体商品:代表购物车中每一个具体的购物项。

这些实体之间的关系如图19所示。

Eclipse+Struts+Hibernate的网络商店 - 编程入门网

图19 业务实体关系图

如图19所示,这里来介绍一下各实体之间的对应关系。

·用户和订单:一个用户可以拥有多个订单,一个订单只能属于一个用户,他们之间的关系是一对多的关系。在数据库表中是表现为订单表中有一个用户表的外键,在Hibernate中则表现为订单持久化类中有一个用户持久化类引用。

·订单与订单项:一个订单中可以有很多订单项,一个订单项只是对一个具体商品的封装。订单与订单项的关系在Hibernate中表现为一个订单项中有一个订单的持久化类引用。

·订单项与商品:一个订单项就是对商品的封装,一个商品就是这个商品的详细信息,订单项中除了有这个商品的信息,还有这个商品的购买数量,属于哪个订单等。

·商品系列与商品:一个商品系列有多个商品,如同计算机方面书籍与计算机程序设计艺术关系。

·商品类别与商品系列,一个商品类别有多个商品系列,如同书与计算机方面书籍的关系。

·购物车与购物商品,用户的购物车中可以有多个购物商品,由于是网上购物,也许购物车中把一个没有库存的商品放到了购物车中,所以购物商品就必须有这个信息。

·购物商品与商品,这个关系同订单项与商品的关系类似,只是购物商品对商品的封装角度不一样,购物商品中除了要记录商品的数量还需记录它的库存情况。

以上是系统中所有实体域模型之间的关系的定义。

3、业务逻辑设计

在本系统中,应用的持久化层采用Hibernate做为中间件,并使用了DAO设计模式实现对数据层的访问。DAO模式是J2EE核心模式中的一种,其主要的行为就是在业务核心方法和具体数据源之间再增加一层,用这一层来连接业务方法和数据源,这样就实现了两者的解耦。

因为具体持久层数据源可能是多样化的,可能是XML或者是关系数据库。在具体的关系数据库中,也可能是不同的产品,如Oracle或者MySQL。通过使用DAO模式,业务核心部分就不用关心数据层是如何实现对数据库的操作的,而只关心自己的业务操作,对数据库的操作全部仍给了DAO代理,如图20所示。

Eclipse+Struts+Hibernate的网络商店 - 编程入门网

图20 DAO模式

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号