《基于SSH的体育用品销售管理系统开发毕业论文设计.doc》由会员分享,可在线阅读,更多相关《基于SSH的体育用品销售管理系统开发毕业论文设计.doc(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、北京邮电大学毕业设计基于SSH的体育用品销售管理系统开发摘 要随着计算机技术和通信技术的迅速发展,网络的规模也逐渐增大,网络的元素也随之不断增加,有的利用其通信,有的利用其商业用途,在网络上进行出售、收购、宣传等操作,从而使得网络越来越成为现今社会上必不可少的元素,而网站就是这个网络里很庞大的元素。本文所讨论的系统是基于目前web开发中流行的2大框架:struts、hibernate的,是典型的B/S架构的系统,其开发主要包括应用程序的开发, 数据库的建立和维护两个方面。本系统前台主要使用JSP作为开发语言,后台使用Oracle作为数据库管理系统,开发环境是Eclipse,服务器采用tomca
2、t,开发出的一个基于Web技术的B/S结构的商城购物系统。 应用此系统,商家可以发布商业信息,广告等等。用户可以查阅、订购商品,该系统可以为客户提供更方便、更好、更快的商务活动空间,实现网上交易,是一个综合性电子商务系统。从整个系统结构上看,本系统包括客户端和服务器端,客户端主要针对客户的一般需求,而服务器端主要是针对管理员的需求。管理员能够对整个系统的数据进行管理。整个系统的开发过程由需求分析,系统的功能设计,详细设计,数据库设计等几个部分组成。关键词:电子商城;数据库设计;模块设计 ;数据验证Sporting Goods Sales Management System Based On S
3、SHAbstractWith the rapid development of computer technology and communication technology, the scale of the network also increases gradually, the network element has been increasing, some use their communication, some use its commercial use, for sale, purchase, publicity, etc in the network operation
4、, so as to make the network more and more become the essential element in modern society, and the site is very large elements of the network. The system we talked about is based on two widely used framework:Struts2 and hibernate. This system is a typical B / S structure of the system, including the
5、development of its application development, database creation and maintenance of the two areas.This system at the front desk mainly using JSP as a development language, the background using Oracle as the database management system, the development environment is Eclipse, server using tomcat, develop
6、ed a Web technology based B/S structure of the system of shopping mall. Through this system, Advertiser can issues business information and products advertisements, and users can conveniently order goods depending on B/S pattern. Because of running on web, the system can offer whole day, better more
7、 quick room of activities to realize the basis functions of transaction in Internet. The Web, according to the current design principles of business Web, gives first place to transaction function in Internet, it is a synthesis electronic commerce Web. From the analysis above, the content of this pap
8、er mainly includes the design of client and server. Client part is specific to user, Server part is specific to administrator. Administrator and manager the hole system, guarantee the guarantee of data base. The developing of this system consist of demand analysis、functional design、detailed design、d
9、atabase design.Key words: Sales network ;design modular; design data; validation目 录摘 要IAbstractII第一章 绪 论11.1 课题的背景和意义11.2 工作内容11.3 J2EE体系结构介绍11.3.1 Tomcat简介21.3.2 Ajax技术简介21.3.3 Struts2框架的引入31.3.4 Hibernate框架的引入31.4 网站工作模式41.5 本章小结4第二章 需求分析52.1 需求分析概述52.2 功能模块图52.3 可行性分析52.3.1 经济可行性52.3.2 技术可行性62.3.
10、3 环境可行性分析62.4 用户需求分析62.4.1 用户注册需求62.4.2 用户登录需求62.4.3 购买商品需求62.4.4 购物车管理需求62.4.5 订单管理需求62.5 管理员需求分析62.5.1 管理库存的需求62.6系统用例图7第三章 概要设计93.1 系统体系结构的设计93.2 系统的层次结构设计93.3 数据库设计93.4 系统组成133.5 系统文件组织设计13第四章 详细设计154.1 系统运行环境154.2 系统部署架构154.3 系统时序图154.4 系统的持久化层具体实现154.4.1 定义Hibernate工厂类154.4.2 使用Dao模式164.5 系统业务
11、逻辑层设计164.6 系统接口及映射文件的实现设计164.7 模块功能设计与实现164.7.1 登陆功能164.7.2 注册功能174.7.3 购买商品功能174.7.4 用户订单管理184.7.5 用户信息修改194.8 系统业务流程图204.9 本章小结20第五章 测试小结215.1 测试说明215.2 系统功能测试215.3 本章小结25结 论26参考文献27致 谢28外文原文29中文翻译37 北京邮电大学毕业设计 第一章 绪 论1.1 课题的背景和意义随着网络的发展越来越迅速,人们也希望互联网能对自己的生活、工作提供越来越方便快捷的支持和帮助。本体育用品销售管理系统是在Internet
12、开放的网络环境下,基于浏览器/服务器应用方式,实现顾客网上交易的一种新型的网购模式。本系统将传统的商品采购流程数字化,可以大量减少人力、物力;另一方面突破了时间和空间的限制,使得网上交易可以在任何时间、任何地点进行,极大地方便了消费者消费,使商品购买变得轻松、快捷、方便,从而大大提高了效率。以前网上销售管理系统大多数是基于客户机/服务器的模式来设计和开发的。随着技术飞速发展,传统的客户机/服务器面临着严峻的挑战,其中最为突出的问题是开发负担重、维护困难等。目前,许多的网站都采用了struts2、hibernate组合来开发,所以本系统所采用的框架与技术是目前业界流行的框架struts2与hib
13、ernate的组合使用,这样的选择让业务逻辑更清晰,数据的管理也更加方便。struts是属于表现层的技术,而hibernate则主要与数据处理打交道。两者都是开源的框架,这样,在经济的可行性分析上面是十分占优势的。本文介绍的是一个网上体育用品销售管理系统。系统具有高可靠性、可扩展性和重用性的特点。1.2 工作内容体育用品销售管理系统是运用现代化的科学方法,对销售进行合理的组织、整合和调配,让用户能方便的进行商品购买、查看等。本系统使用Sun公司的J2EE架构,并以STRUTS为框架,Hibernate作为持久化层,采用了Web应用系统的MVC体系结构。并研究了设计模式与框架技术,设计并实现了基
14、于j2EE的体育用品销售管理系统,为以后的研究与实践打下了基础。其中论文主要完成了以下工作:()基于STRUTS+Hibernate构件多层Web应用系统的框架及相关理论研究。()对销售与管理系统各部分所涉及的功能进行分析探讨。()按照需求设计并实现了一个体育用品销售管理系统。1.3 J2EE体系结构介绍J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。JavaEE是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循JavaEE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无
15、法兼容,企业内部或外部难以互通的窘境。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,如编写一次、随处运行的特性、方便存储数据库的JDBC API以及能够在internet应用中保护数据的安全模式等等,同时还提供了对EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的
16、需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供了对现有应用程序集成强有力的支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。在J2EE开发模型中,整个系统可分为以下三个主要部分:()模型(Module)模型就是应用业务逻辑部分,这个部分主要角色EJB(EnterpriseJavaBeans),借助于EJB强大的组件技术和企业级的管理控制,开发人员可以轻松的创建出可重用的业务逻辑模块。()视图(view)视图是用户界面部分,在web应用程序中也就是HTML、XML、JSP页面。这个部
17、分主要处理用户看到的东西即用于显示,动态JSP部分处理了用户可看见的动态网页,而静态的网页由HTML和XML输出。()控制器(Control)控制器负责网站的整个逻辑。它用于管理用户与视图发生的交互。可以将控制器想像成处在视图和数据之间,对视图如何与模型交互进行管理。通过使视图完全独立于控制器和模型,就可以轻松替换前端客户程序,即网页制作人员将可以独立自由地改变Web页面而不用担心影响这个基于Web的应用程序功能。在J2EE模型中,控制器的功能一般是由Servlet、JavaBeans、EJB中的SessionBean来充当的。1.3.1 Tomcat简介Tomcat是Apache 软件基金会
18、(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现。由于Tomcat 技术先进、性能稳定,而且免费,所以深受Java 爱好者的喜爱也得到了一些软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能,所以他深受Java爱好者的喜爱。Tomcat 是一个小型的应用服务器,
19、在中小型系统和并发访问用户不是很多的场合下被普遍使用,也是开发和调试JSP 程序的首选。对于一个初学者来说,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和 JSP容器,独立的Servl
20、et容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。1.3.2 Ajax技术简介Ajax全称“Asynchronous JavaScript and XML”,是指一种创建交互式网页应用的网页开发技术。它包含了以下几种技术:基于web标准XHTML+CSS的表示;使用DOM进行动态显示及交互;使用XML和XSLT进行数据交换及相关操作;使用XMLHttpRequest进行异步数据查询、检索;使用JavaScript将所有的东西绑定在一起。Ajax,使用它可以构建更为动态和响应更灵敏的Web应用程序,让浏览器为用户提供更为自然的浏览体验。Ajax能提
21、供与服务器异步通信的能力,从而使用户从请求/响应的循环中解脱出来。借助Ajax,可以在用户单击按钮时,使用JavaScript和DHTML立即更新UI,并向服务器发出异步请求,来执行更新或查询数据库。当请求返回时,就可以使用JavaScript和CSS来相应地更新UI,而不是刷新整个页面,使用户看起来是即时响应的。Ajax的核心是JavaScript对象XmlHttpRequest。该对象是一种支持异步请求的技术。简而言之,XmlHttpRequest使用户可以使用JavaScript向服务器提出请求并处理响应,而不是阻塞用户。在创建Web站点时,在客户端执行屏幕更新为用户提供了很大的灵活性。
22、1.3.3 Struts2框架的引入一个成功的电子商务网站的构建不仅需要考虑到如何高效快捷的实现系统功能,还要本着可扩展的原则,在一定时期内适应技术发展与功能扩充的需求,同时要给用户提供方便、实用的信息服务,使网站的商务功能最大化。因此在网上体育用品销售系统的设计中,采用了基于Struts2的结构框架设计,采用此结构框架设计的优点有:(1) 可扩展性:Struts2框架是基于JSP Model2的设计标准,可以说是MVC设计模式的一种变化类型,其业务逻辑和表示逻辑分开,而且所有默认的设置都可以配置,包括了一系列通用标记扩展,适应复杂的业务形式,具有较强的可扩展性,能满足新业务发展的要求。(2)
23、 标准性和开放性:Struts2 框架基于Java语言,而且其基本组件具有统一的标准,在许多运行标准的容器中都工作的非常好,具备优异的可移植性(3) 安全性和高效性Struts2具有完善的安全管理机制,Java语言也是当前最安全的语言。采用Struts能使系统具有较高的网络安全性和运行效率,保证提供高质量的网络服务和快速的响应速度。1.3.4 Hibernate框架的引入Hibernate是JDBC的轻量级的对象封装,它是当前比较流行的对象持久化技术,用hibernate可以将一个Java对象保存到数据库。它是一个独立的对象持久层框架,和Application Server、EJB之间没有什么
24、必然的联系。Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动及数据库都有一定的关系,但是和使用它的Java程序、Application Server没有任何关系,也不存在兼容性问题。Hibernate的体系总览如图1.1所示。 图1.1 Hibernate的体系总览图由于Hibernate比较复杂,提供了好几种运行方式。在轻型体系中,应用程序自己提供JDBC连接,并自行管理事务。这种方式使用了Hib
25、ernate API的一个最小子集。如图1.2所示图1.2 Hibernate运行方式图此处SessionFactory的含义为:单一数据库编译过的映射文件的一个线程安全的、不可变的缓存快照。它是Session的工厂,是Connection Provider的客户。可能持有一个可选的二级数据缓存,可以在进程级别后集群级别保存可以在事务中重用的数据。Session是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。封装了一个JDBC连接,也是Transaction的工厂。保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。1.4 网站工作模式目前在应用开发领域中,
26、主要分成两大编程体系,一种是基于浏览器的B/S结构,另一种是客户机/服务器(C/S)结构。在此网上销售管理系统中,我们采用了B/S模式。将C/S与B/S模式作一下比较发现:(1) C/S模式客户连接多时导致性能迅速下降、占用资源多。而B/S模式下多采用分层结构,分布式处理任务,多客户时性能优越。(2) 客户端与服务器直接相连,安全性差,对客户端性能要求较高。而B/S模式只需要有浏览器即可访问。(3) 对C/S程序作任何改动都需要重新安装客户端,而B/S程序只需要在服务器端重新部署即可实现所有客户程序的更新。(4) C/S界面操作速度有一定优势,但存在界面死板、不够美观的弱点,而浏览器页面的元素
27、的多样性使得系统界面更加美观。总体上,基于B/S应用模式的营销系统更加符合现在的应用环境和技术发展的趋势。本系统充分利用过滤器和监听器的功能,解决系统乱码问题,和对session对象的管理。其中监听器使用了SessionListener,ContextListener,SessionListener实现了当用户关闭浏览器时,系统会自动删除session中的购物车,当用户访问页面时即session形成时,监听器会自动监听,系统会自动创建购物车以便后来在用户购物车管理模块中当用户购买商品时,放入到此购物车中。ContextListener使用的目的是,监听整个应用系统的启动和关闭,当系统启动时会加
28、载数据库中的所有体育用品商品。这样做的好处是不必每次请求查看商品数据时都与数据库发生交互。1.5 本章小结本章首先分析了下当前销售行业在网络上的发展态势,得出基于web系统的开发是一个新的趋势。然后从技术的角度讨论了web系统开发的模式和框架,包括struts2和hibernate框架的运行原理和各自的性能特点,它们各自代表着控制层和持久层。第二章 需求分析2.1 需求分析概述体育用品销售管理系统主要实现了在网上选购商品、将商品加入购物车、查询订单等功能。本系统实现了商品信息的展示、购物车管理、注册用户信息、修改个人信息、登录管理、订单处理等模块。需求分析可以分解为用户需求分析和管理员需求分析
29、。2.2 功能模块图功能模块图如图2.1所示:图2.1 功能模块图2.3 可行性分析2.3.1 经济可行性通过网站对体育用品销售进行全面的自动化的管理,使销售管理系统更加规范,实现了通过网络对商品信息进行发布、传递、接收等一系列功能,大大提高了企业的办公效率。通过系统对体育用品销售过程中的数据进行全面的管理和统计,避免人为处理各类数据时所产生的各种问题,提高了企业的经济效益,为企业经营决策提供了大量的、权威的数据,使企业的管理进行到科学化、系统化的范筹。2.3.2 技术可行性网络体育用品销售系统的开发采用了先进成熟并且符合实际应用的开发方法,目前最流行的集成开发环境MyEclipse,动态网页
30、开发技术JSP和MVC架构技术Struts、Spring和Hibernate,功能强大的数据库管理工具Oracle,结合自己的实际开发能力,可以开发出较为完善的体育用品销售管理系统。2.3.3 环境可行性分析在软件环境方面,系统的开发环境如下:操作系统:windows7;Web应用服务器:Tomcat 6.0;数据库:Oracle 10.0g;开发工具:Elcipse;2.4 用户需求分析2.4.1 用户注册需求注册要求用户输入一些个人信息,用户名是每个注册用户的唯一标识。注册过程中还可以检查用户名是否存在,当注册成功后,用户可以使用用户名和密码进入体育用品销售系统,进行购物、查看订单等活动。
31、2.4.2 用户登录需求在登录界面上用户可以输入用户名和密码进行登录,如果用户名和密码都正确,则可以进入体育用品销售管理系统,如果不正确,提示用户登陆失败,请输入正确的用户名和密码,并重新登录。如果用户不存在还可以点击用户注册进入用户注册界面。2.4.3 购买商品需求用户可以以两种身份浏览商品。一种是已注册用户,另一种是游客。当用户用注册用户账号登录本系统进行购物时,用户可以先将选中商品加入购物车,再提交订单,可以选择货到付款、邮局汇款、银行转账三个付款方式。如果以游客身份购买商品,可以将选中商品先加入购物车,提交订单时,系统会自动提示您需要登录才可以购买此商品,页面将自动跳转到登录界面。2.
32、4.4 购物车管理需求购物车可以跟踪用户选择的商品,用户在购物车中保存自己所选中的商品。每个用户都有自己临时的一个购物车。可以查看购物车,可以修改选中的商品的数量,可以添加商品放入购物车,也可以取消已加入购物车的商品或者清空购物车重新选购商品。2.4.5 订单管理需求已登陆用户能查看自己的订单,能查看自己订单的详细信息,也可以删除自己的订单,当确认订单后,系统根据购物车中的数据生成一条订单记录和一条订单明细记录,并将此次购买信息加入到相应顾客的订单信息中,并清空了购物车中的所有商品。2.5 管理员需求分析2.5.1 管理库存的需求核心功能为添加商品,修改商品信息,修改库存,即对体育用品数量的增
33、加和删除,增加体育用品的同时还要对保存在session里面的体育用品作更新,与数据库的同步,让顾客可以买到最新型号的体育用品。如图2.2所示图2.2 管理员需求框图2.6系统用例图(1)客户总体用例图,如图2.3所示 图2.3 客户总体用例图(2) 客户管理用例图,如图2.4所示图2.4 客户管理用例图(3)客户购物车用例图,如图2.5所示图2.5 客户购物车用例图(4)客户订单用例图,如图2.6所示图2.6客户订单用例图42第三章 概要设计3.1 系统体系结构的设计()该系统是以关系数据库为存储,基于Web的应用系统。由一系列组件和功能模块组成。总体结构:浏览器/服务器(B/S)编程模式:J
34、sp+Hibernate+STRUTS2逻辑结构:用户界面开发、业务逻辑处理和数据存储()该系统联合使用业务代理和DAO模式3.2 系统的层次结构设计系统从逻辑上分为显示层、业务逻辑层、数据持久层。从程序分布位置角度来看,系统依次分布在浏览器、应用服务器、数据库系统这三层。3.3 数据库设计数据库技术是信息资源管理最有效的手段。数据库设计是指针对一个给定的应用环境,构造最好的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。数据库结构设计的好坏直接对应用系统的效率及实现效果产生影响。合理的数据库设计可以提高数据库的存储效率、保证数据的完整性和一致性。基于系统的功能分
35、析,其ER图如图3.1所示。用户拥有个人信息订货订单构成订单明细体育用品参照拥有体育用品信息购买 图3.1 系统的实体关系图根据ER图,可得出数据库的表单如下:(1) userinfo:存放用户信息如表3.1所示:表3.1 用户信息表字段名字段类型约束或索引描述useridVarchar2(16)PK记录流水号NameVarchar2(16)用户名PasswordVarchar2(16)用户密码ZipVarchar2(255)邮编AddressVarchar2(255)地址TelephoneVarchar2(255)电话EmailVarchar2 (255)电子邮件(2) Product表:存
36、放体育用品信息如表3.2所示:表3.2 体育用品信息表字段名字段类型约束或索引描述productidNumberPK记录流水号NameVarchar2(64)书名descriptionVarchar2(2000)体育用品的描述basepriceNumber体育用品价钱categoryidNumber体育用品类型pcountNumber体育用品的数量imagesVarchar2(200)体育用品的图片(3) orderline表:存放订单明细信息如表3.3所示:表3.3 订单明细表字段名字段类型约束或索引描述lineidNumber(10)PK记录流水号productidNumber(10)FK
37、体育用品的流水记录号OrderidNumber(10)FK订单的流水记录号amountNumber(10)数量(4) der表:存放订单信息如表3.4所示:表3.4 订单信息表字段名字段类型约束或索引描述orderidNumber(Sequence)PK记录流水号nameVarchar2(32)体育用品名称finishedNumber下单时间costNumber订单价格useridVarchar2(16)FK用户编号statusidNumberFK订单状态paywayidNumberFK付款方式(5) payway表:用户选择付款方式如表3.5所示:表3.5 付款方式表字段名字段类型约束或索引
38、描述PaywayidNumberPK记录流水号paystyleVarchar2(16)付款方式(6) contactionfo表:查看订单详细信息如表3.6所示:表3.6 订单详细信息表字段名字段类型约束或索引描述contactidNumberPK记录流水号useridVarchar2(16)FK用户编号street1Varchar2(64)联系地址zipVarchar2(8)邮编emailVarchar2(32)Email地址homephoneVarchar2(16)家庭电话cellphoneVarchar2(16)手机号码officephoneVarchar2(16)办公室电话3.4 系统
39、组成系统组成表如表3.7所示:表3.7 系统组成表用户表示层(View)控制处理层(Controller)业务逻辑层(Model)addProducts.jspproductDetail.jspProducts.jspconfirmOrder.jsporder.jspOrderinfo.jspUserinfo.jspadminLogin.jspindex.jsplogin.jspMyJsp.jspproductDetail.jspRegister.jspshopcart.jspActionAdminCategoryContactioninfoIShopCartOrderOrderlineOrd
40、erstatusPaywayProductShopCartUserAddProductActionAdminLoginActionAdminProductActionExitActionIndexActionLoginActionModifyAction.3.5 系统文件组织设计采用分层开发设计,这样的好处是分工明确,适合团队开发。如果某个地方出现错误不会影响其他层。这是一种高內聚低耦合的设计思想。为体现Struts框架结构的设计思想,可采用以下的包结构的设计思想。WebRoot中的文件主要是直接为用户提供服务的页面文件,也就是MVC中的(View) ,负责界面的显示和与用户的交互。这样以来,
41、View只使用或调用action里的服务,而action和service也只调用dao里面的方法。这种调用方向单一,有效地降低了耦合,增强了内聚。系统文件的组织如图3.2所示:图3.2 系统文件的组织第四章 详细设计详细设计是对系统架构设计的精化,主要是在系统需求规格和架构设计的基础上,对系统用例中使用的类和对象进行进一步的精化,确定每一个类的属性和方法。4.1 系统运行环境系统运行的操作系统为Windows,也可以移植到Linux、Unix等操作系统下执行,数据库采用Oracle 10g,应用服务器采用符合J2EE规范的Tomcat6.0应用服务器。4.2 系统部署架构整个应用部署在一台应用
42、服务器、一台数据库服务器上。系统可以可以使用企业内部局域网,也可以通过广域网访问系统。4.3 系统时序图在体育用品销售管理系统设计过程中,时序图如图4.1所示。图4.1 系统时序图(1)界面:在本项目中指JSP页面,在具体的时序图中被实际的页面文件所替代。(2)Action:指Struts中的Action的具体实现类,在具体的时序图中被实际的类所替代。其作为控制器的一部份存在。(3)BO:业务逻辑操作对象(Bussiness Object),执行功能的业务逻辑职责,在具体的时序图中被实际的类所替代。如果某个功能没有业务逻辑处理,此类可以不在时序图中存在。(4)DAO:为数据操作类处理相应的数据
43、库操作。(5)HibernateDataSource:数据操作实现类,用来执行实际的数据库访问。4.4 系统的持久化层具体实现4.4.1 定义Hibernate工厂类本系统采用Struts和Hibernate技术进行开发,由Hibernate进行数据库连接和数据对象的操作,这里定义一个HibernateSessionFactory类去负责初始化Hibernate。由它创建全局的SessionFactory工厂类,并且提供创建和关闭session实例,创建HibernateTransaction负责打开/关闭事物。这样在使用hibernate时更加方便,不用每次为创建SessionFactory
44、实例,Session实例或者关闭Session实例,打开/关闭,事物操作单独这些代码,只要调用上面的类的方法就可以了,从而简化了操作。4.4.2 使用Dao模式本系统的持久化逻辑采用Hibernate作为中间件,并使用DAO设计模式实现。主要是在业务核心方法和具体数据源之间增加一层,这样就减少了两者的耦合。每个持久化类对应一个DAO类,它实现了持久化类的创建、查询、更新及删除方法,以及其它访问持久化机制的方法。本系统所有与数据库逻辑有关的方法都在IDao接口中,在com.briup.dao包下创建一个Dao的接口,并在com.briup.dao包下创建一个impl继承Dao接口实现具体的操作。
45、4.5 系统业务逻辑层设计业务逻辑层中只包含业务逻辑,不包含任何与数据库的交互,因此减少了访问过程中与数据库交互的过程,大大提高了运行的速率。业务逻辑层的实现需要调用持久化层和数据库交互功能的支持。本系统所有与业务逻辑有关的方法都在Service接口中,并且在com.briup.service包中创建一个impl包,此包中的类是对service接口的实现。4.6 系统接口及映射文件的实现设计 本系统的持久化逻辑采用Hibernate作为中间件,并使用DAO设计模式实现。主要是在业务核心方法和具体数据源之间增加一层,这样就减少了两者的耦合。每个持久化类对应一个DAO,它实现了持久化类的创建、查询、更新及删除方法,即CRUD(create 、retrieve、update、delete)方法,以及其他访问持久化机制方法。 本系统所有与数据库逻辑有关的方法都在Dao的实现类中,现在dao包下创建接口IProductDao、IOrderDao、IUserDao ,并在dao.impl包下创建接口的实现类ProductDaoImpl OrderDaoImpl、UserDao