完整版基于SSH的体育用品销售管理系统开发毕业设计40设计41Word文档格式.docx
《完整版基于SSH的体育用品销售管理系统开发毕业设计40设计41Word文档格式.docx》由会员分享,可在线阅读,更多相关《完整版基于SSH的体育用品销售管理系统开发毕业设计40设计41Word文档格式.docx(43页珍藏版)》请在冰豆网上搜索。
Throughthissystem,Advertisercanissuesbusinessinformationandproductsadvertisements,anduserscanconvenientlyordergoodsdependingonB/Spattern.Becauseofrunningonweb,thesystemcanofferwholeday,bettermorequickroomofactivitiestorealizethebasisfunctionsoftransactioninInternet.TheWeb,accordingtothecurrentdesignprinciplesofbusinessWeb,givesfirstplacetotransactionfunctioninInternet,itisasynthesiselectroniccommerceWeb.Fromtheanalysisabove,thecontentofthispapermainlyincludesthedesignofclientandserver.Clientpartisspecifictouser,Serverpartisspecifictoadministrator.Administratorandmanagertheholesystem,guaranteetheguaranteeofdatabase.Thedevelopingofthissystemconsistofdemandanalysis、functionaldesign、detaileddesign、databasedesign.
Keywords:
Salesnetwork;
designmodular;
designdata;
validation
第一章绪论
1.1课题的背景和意义
随着网络的发展越来越迅速,人们也希望互联网能对自己的生活、工作提供越来越方便快捷的支持和帮助。
本体育用品销售管理系统是在Internet开放的网络环境下,基于浏览器/服务器应用方式,实现顾客网上交易的一种新型的网购模式。
本系统将传统的商品采购流程数字化,可以大量减少人力、物力;
另一方面突破了时间和空间的限制,使得网上交易可以在任何时间、任何地点进行,极大地方便了消费者消费,使商品购买变得轻松、快捷、方便,从而大大提高了效率。
以前网上销售管理系统大多数是基于客户机/服务器的模式来设计和开发的。
随着技术飞速发展,传统的客户机/服务器面临着严峻的挑战,其中最为突出的问题是开发负担重、维护困难等。
目前,许多的网站都采用了struts2、hibernate组合来开发,所以本系统所采用的框架与技术是目前业界流行的框架struts2与hibernate的组合使用,这样的选择让业务逻辑更清晰,数据的管理也更加方便。
struts是属于表现层的技术,而hibernate则主要与数据处理打交道。
两者都是开源的框架,这样,在经济的可行性分析上面是十分占优势的。
本文介绍的是一个网上体育用品销售管理系统。
系统具有高可靠性、可扩展性和重用性的特点。
1.2工作内容
体育用品销售管理系统是运用现代化的科学方法,对销售进行合理的组织、整合和调配,让用户能方便的进行商品购买、查看等。
本系统使用Sun公司的J2EE架构,并以STRUTS为框架,Hibernate作为持久化层,采用了Web应用系统的MVC体系结构。
并研究了设计模式与框架技术,设计并实现了基于j2EE的体育用品销售管理系统,为以后的研究与实践打下了基础。
其中论文主要完成了以下工作:
(1)基于STRUTS+Hibernate构件多层Web应用系统的框架及相关理论研究。
(2)对销售与管理系统各部分所涉及的功能进行分析探讨。
(3)按照需求设计并实现了一个体育用品销售管理系统。
1.3J2EE体系结构介绍
J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
JavaEE是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循JavaEE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,企业内部或外部难以互通的窘境。
J2EE技术的基础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,如编写一次、随处运行的特性、方便存储数据库的JDBCAPI以及能够在internet应用中保护数据的安全模式等等,同时还提供了对EJB(EnterpriseJavaBeans)、JavaServletsAPI、JSP(JavaServerPages)以及XML技术的全面支持。
其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。
J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。
通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供了对现有应用程序集成强有力的支持,完全支持EnterpriseJavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。
在J2EE开发模型中,整个系统可分为以下三个主要部分:
(1)模型(Module)
模型就是应用业务逻辑部分,这个部分主要角色EJB(EnterpriseJavaBeans),借助于EJB强大的组件技术和企业级的管理控制,开发人员可以轻松的创建出可重用的业务逻辑模块。
(2)视图(view)
视图是用户界面部分,在web应用程序中也就是HTML、XML、JSP页面。
这个部分主要处理用户看到的东西即用于显示,动态JSP部分处理了用户可看见的动态网页,而静态的网页由HTML和XML输出。
(3)控制器(Control)
控制器负责网站的整个逻辑。
它用于管理用户与视图发生的交互。
可以将控制器想像成处在视图和数据之间,对视图如何与模型交互进行管理。
通过使视图完全独立于控制器和模型,就可以轻松替换前端客户程序,即网页制作人员将可以独立自由地改变Web页面而不用担心影响这个基于Web的应用程序功能。
在J2EE模型中,控制器的功能一般是由Servlet、JavaBeans、EJB中的SessionBean来充当的。
1.3.1Tomcat简介
Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现。
由于Tomcat技术先进、性能稳定,而且免费,所以深受Java爱好者的喜爱也得到了一些软件开发商的认可,成为目前比较流行的Web应用服务器。
Tomcat因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;
而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能,所以他深受Java爱好者的喜爱。
Tomcat是一个小型的应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,也是开发和调试JSP程序的首选。
对于一个初学者来说,当在一台机器上配置好Apache服务器,可利用它响应对HTML页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
1.3.2Ajax技术简介
Ajax全称“AsynchronousJavaScriptandXML”,是指一种创建交互式网页应用的网页开发技术。
它包含了以下几种技术:
基于web标准XHTML+CSS的表示;
使用DOM进行动态显示及交互;
使用XML和XSLT进行数据交换及相关操作;
使用XMLHttpRequest进行异步数据查询、检索;
使用JavaScript将所有的东西绑定在一起。
Ajax,使用它可以构建更为动态和响应更灵敏的Web应用程序,让浏览器为用户提供更为自然的浏览体验。
Ajax能提供与服务器异步通信的能力,从而使用户从请求/响应的循环中解脱出来。
借助Ajax,可以在用户单击按钮时,使用JavaScript和DHTML立即更新UI,并向服务器发出异步请求,来执行更新或查询数据库。
当请求返回时,就可以使用JavaScript和CSS来相应地更新UI,而不是刷新整个页面,使用户看起来是即时响应的。
Ajax的核心是JavaScript对象XmlHttpRequest。
该对象是一种支持异步请求的技术。
简而言之,XmlHttpRequest使用户可以使用JavaScript向服务器提出请求并处理响应,而不是阻塞用户。
在创建Web站点时,在客户端执行屏幕更新为用户提供了很大的灵活性。
1.3.3Struts2框架的引入
一个成功的电子商务网站的构建不仅需要考虑到如何高效快捷的实现系统功能,还要本着可扩展的原则,在一定时期内适应技术发展与功能扩充的需求,同时要给用户提供方便、实用的信息服务,使网站的商务功能最大化。
因此在网上体育用品销售系统的设计中,采用了基于Struts2的结构框架设计,采用此结构框架设计的优点有:
(1)可扩展性:
Struts2框架是基于JSPModel2的设计标准,可以说是MVC设计模式的一种变化类型,其业务逻辑和表示逻辑分开,而且所有默认的设置都可以配置,包括了一系列通用标记扩展,适应复杂的业务形式,具有较强的可扩展性,能满足新业务发展的要求。
(2)标准性和开放性:
Struts2框架基于Java语言,而且其基本组件具有统一的标准,在许多运行标准的容器中都工作的非常好,具备优异的可移植性
(3)安全性和高效性Struts2具有完善的安全管理机制,Java语言也是当前最安全的语言。
采用Struts能使系统具有较高的网络安全性和运行效率,保证提供高质量的网络服务和快速的响应速度。
1.3.4Hibernate框架的引入
Hibernate是JDBC的轻量级的对象封装,它是当前比较流行的对象持久化技术,用hibernate可以将一个Java对象保存到数据库。
它是一个独立的对象持久层框架,和ApplicationServer、EJB之间没有什么必然的联系。
Hibernate可以用在任何JDBC可以使用的场合,例如Java应用程序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。
Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动及数据库都有一定的关系,但是和使用它的Java程序、ApplicationServer没有任何关系,也不存在兼容性问题。
Hibernate的体系总览如图1.1所示。
图1.1Hibernate的体系总览图
由于Hibernate比较复杂,提供了好几种运行方式。
在轻型体系中,应用程序自己提供JDBC连接,并自行管理事务。
这种方式使用了HibernateAPI的一个最小子集。
如图1.2所示
图1.2Hibernate运行方式图
此处SessionFactory的含义为:
单一数据库编译过的映射文件的一个线程安全的、不可变的缓存快照。
它是Session的工厂,是ConnectionProvider的客户。
可能持有一个可选的二级数据缓存,可以在进程级别后集群级别保存可以在事务中重用的数据。
Session是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。
封装了一个JDBC连接,也是Transaction的工厂。
保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。
1.4网站工作模式
目前在应用开发领域中,主要分成两大编程体系,一种是基于浏览器的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界面操作速度有一定优势,但存在界面死板、不够美观的弱点,而浏览器页面的元素的多样性使得系统界面更加美观。
总体上,基于B/S应用模式的营销系统更加符合现在的应用环境和技术发展的趋势。
本系统充分利用过滤器和监听器的功能,解决系统乱码问题,和对session对象的管理。
其中监听器使用了SessionListener,ContextListener,SessionListener实现了当用户关闭浏览器时,系统会自动删除session中的购物车,当用户访问页面时即session形成时,监听器会自动监听,系统会自动创建购物车以便后来在用户购物车管理模块中当用户购买商品时,放入到此购物车中。
ContextListener使用的目的是,监听整个应用系统的启动和关闭,当系统启动时会加载数据库中的所有体育用品商品。
这样做的好处是不必每次请求查看商品数据时都与数据库发生交互。
1.5本章小结
本章首先分析了下当前销售行业在网络上的发展态势,得出基于web系统的开发是一个新的趋势。
然后从技术的角度讨论了web系统开发的模式和框架,包括struts2和hibernate框架的运行原理和各自的性能特点,它们各自代表着控制层和持久层。
第二章需求分析
2.1需求分析概述
体育用品销售管理系统主要实现了在网上选购商品、将商品加入购物车、查询订单等功能。
本系统实现了商品信息的展示、购物车管理、注册用户信息、修改个人信息、登录管理、订单处理等模块。
需求分析可以分解为用户需求分析和管理员需求分析。
2.2功能模块图
功能模块图如图2.1所示:
图2.1功能模块图
2.3可行性分析
2.3.1经济可行性
通过网站对体育用品销售进行全面的自动化的管理,使销售管理系统更加规范,实现了通过网络对商品信息进行发布、传递、接收等一系列功能,大大提高了企业的办公效率。
通过系统对体育用品销售过程中的数据进行全面的管理和统计,避免人为处理各类数据时所产生的各种问题,提高了企业的经济效益,为企业经营决策提供了大量的、权威的数据,使企业的管理进行到科学化、系统化的范筹。
2.3.2技术可行性
网络体育用品销售系统的开发采用了先进成熟并且符合实际应用的开发方法,目前最流行的集成开发环境MyEclipse,动态网页开发技术JSP和MVC架构技术Struts、Spring和Hibernate,功能强大的数据库管理工具Oracle,结合自己的实际开发能力,可以开发出较为完善的体育用品销售管理系统。
2.3.3环境可行性分析
在软件环境方面,系统的开发环境如下:
操作系统:
windows7;
Web应用服务器:
Tomcat6.0;
数据库:
Oracle10.0g;
开发工具:
Elcipse;
2.4用户需求分析
2.4.1用户注册需求
注册要求用户输入一些个人信息,用户名是每个注册用户的唯一标识。
注册过程中还可以检查用户名是否存在,当注册成功后,用户可以使用用户名和密码进入体育用品销售系统,进行购物、查看订单等活动。
2.4.2用户登录需求
在登录界面上用户可以输入用户名和密码进行登录,如果用户名和密码都正确,则可以进入体育用品销售管理系统,如果不正确,提示用户登陆失败,请输入正确的用户名和密码,并重新登录。
如果用户不存在还可以点击用户注册进入用户注册界面。
2.4.3购买商品需求
用户可以以两种身份浏览商品。
一种是已注册用户,另一种是游客。
当用户用注册用户账号登录本系统进行购物时,用户可以先将选中商品加入购物车,再提交订单,可以选择货到付款、邮局汇款、银行转账三个付款方式。
如果以游客身份购买商品,可以将选中商品先加入购物车,提交订单时,系统会自动提示您需要登录才可以购买此商品,页面将自动跳转到登录界面。
2.4.4购物车管理需求
购物车可以跟踪用户选择的商品,用户在购物车中保存自己所选中的商品。
每个用户都有自己临时的一个购物车。
可以查看购物车,可以修改选中的商品的数量,可以添加商品放入购物车,也可以取消已加入购物车的商品或者清空购物车重新选购商品。
2.4.5订单管理需求
已登陆用户能查看自己的订单,能查看自己订单的详细信息,也可以删除自己的订单,当确认订单后,系统根据购物车中的数据生成一条订单记录和一条订单明细记录,并将此次购买信息加入到相应顾客的订单信息中,并清空了购物车中的所有商品。
2.5管理员需求分析
2.5.1管理库存的需求
核心功能为添加商品,修改商品信息,修改库存,即对体育用品数量的增加和删除,增加体育用品的同时还要对保存在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客户订单用例图
第三章概要设计
3.1系统体系结构的设计
(1)该系统是以关系数据库为存储,基于Web的应用系统。
由一系列组件和功能模块组成。
● 总体结构:
浏览器/服务器(B/S)
● 编程模式:
Jsp+Hibernate+STRUTS2
● 逻辑结构:
用户界面开发、业务逻辑处理和数据存储
(2)该系统联合使用业务代理和DAO模式
3.2系统的层次结构设计
系统从逻辑上分为显示层、业务逻辑层、数据持久层。
从程序分布位置角度来看,系统依次分布在浏览器、应用服务器、数据库系统这三层。
3.3数据库设计
数据库技术是信息资源管理最有效的手段。
数据库设计是指针对一个给定的应用环境,构造最好的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。
数据库结构设计的好坏直接对应用系统的效率及实现效果产生影响。
合理的数据库设计可以提高数据库的存储效率、保证数据的完整性和一致性。
基于系统的功能分析,其ER图如图3.1所示。
图3.1系统的实体关系图
根据ER图,可得出数据库的表单如下:
(1)userinfo:
存放用户信息如表3.1所示:
表3.1用户信息表
字段名
字段类型
约束或索引
描述
userid
Varchar2(16)
PK
记录流水号
Name
用户名
Password
用户密码
Zip
Varch