《网上商城系统毕业论文.doc》由会员分享,可在线阅读,更多相关《网上商城系统毕业论文.doc(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 网上商城系统 用户子功能模块 软件工程学 院: 专 业: 指导教师: 2014年 6 月网上商城系统摘 要网上购物系统又称为网上商城、网络商城、网上商城、网上开店平台、网店管理系统、网店程序、网上购物系统、网上商城系统等。无论是开设个人网上购物商店还是企业网上商城商城,一套好用的网上购物系统都是必须的。网上购物系统拥有完整规范的商流和金流,整合了几十家国内知名的支付网关,并且内置了多套精美模版,同时还提供灵活强大的模版编辑功能。商家可以根据自己的喜好对网上商店(网上购物系统)的前台页面做个性化设置;同时,网上购物系统还拥有强大的商城功能,如店铺推荐和搜索,商品推荐和展示等等。运营商可以给商家
2、提供全方位的广告宣传和推广。顾客也可以方便的找到自己心仪的商品和商店;通过网上购物系统的建设以实现对商业零售企业提供信息化管理。建立了B2C的网络销售系统。本毕业设计的内容是设计并且实现一个基于web技术的网上购物系统,故而系统主要以j2EE作为开发基础,主要使用了struts2+spring+hibernate等多种框架的结合使用,用myeclipse作为开发工具,以MySQL作为数据库,以Macromedia公司的Dreamweaver作为界面美化工具,使用JAVA语言开发,页面采取JSP动态页面开发技术。该系统界面简单、操作方便,容易维护。着重论述了系统功能与实现、数据流程及存储,包括商
3、品目录、用户注册、网上订货与购物、库存查询、后台数据库管理等。关键词:购物商城,S.S.H(Struts ,Hibernate ,Spring),JAVA , JSP,MySQLOnline Shopping SystemAbstractOnline shopping system is also called the online mall, online shopping mall, online shopping, online shop, shop, shop platform management system procedures, the online shopping syst
4、em, online shopping system. In both the open in personal online shopping store or online shopping mall, a good use of the online shopping system is a must. online shopping system have a complete specification of business flow and capital flow, the integration of dozens of well-known domestic payment
5、 gateway, and built many beautiful template, also provides a flexible and powerful template editing function. Company can according to their own preferences to shop online (online shopping systems) front page do personalized settings; At the same time, online shopping system has the formidable Mall
6、features, such as shop recommendation and search, recommendation and display etc. The operator can give businesses to provide advertising and promotion of the full range of. Customers can easily find their favorite goods and shops; Realizes through the on-line shopping system construction to provide
7、 the information management of commercial retail enterprises. The contents of this graduation project is to design and implement a system of online shopping based on Web technology, this system mainly uses j2EE as the basis of development, the main use of the combined use of struts2+spring+hibernate
8、 and other frameworks, MyEclipse as a development tool, MYSQL as the database, using Macromedias Dreamweaver as the interface landscaping tools, the use of JAVA language development take, page development technology of JSP dynamic pages. The system has a simple interface, easy operation, easy mainte
9、nance.Emphatically elaborated the system function and the realization, the data flow and storage, including catalog, user registration, online ordering and shopping, stock inquiry, backstage database management etc.Keywords:Shopping mall,Struts,Hibernate,Spring,JAVA,JSP 目 录1 引言11.1 课题研究的背景11.2 课题研究的
10、意义22 系统的开发环境32.1 MyEclipse简介32.2 Tomcat32.3 MySQL数据库33 系统开发的思想与技术53.1 JSP技术与MVC53.2 S.S.H框架54 系统分析74.1 系统需求分析74.1.1 用户功能需求74.1.2 管理员功能需求84.1.3 性能需求84.2 可行性分析84.2.1 经济可行性84.2.2 技术可行性84.2.3 操作可行性95 系统详细设计与实现105.1 设计目标105.2 系统总功能图105.3 系统用例图115.4 程序流程图115.5 系统和数据库的配置135.6 概念模型设计135.7 数据库表结构14 第 页 共 页5.
11、8 系统功能实现的主要框架175.8.1 SSH框架175.8.2 hibernate配置文件175.8.3 struts配置文件195.8.4 spring配置文件195.9 系统功能实现的主要模块215.9.1 网站页面215.9.2 用户注册页面235.9.3 用户购物页面255.9.4 购物车页面266 系统的调试与测试276.1 软件测试的目的276.2 软件测试的任务276.3 测试方法276.3.1 界面测试276.3.2 功能测试286.3.3 需求测试286.3.4 性能测试286.4 网上商城系统测试287 结论29参 考 文 献30致 谢31第 页 共 页1 引言1.1
12、课题研究的背景电子商务,就是在网上开展商务活动。它是以电子交易为手段,完成金融、物品、服务、信息等价值的交换,是快速而有效地进行各种商务活动的最新方法。电子商务的出现,改变了传统的一手交钱一手交货的模式,使得商业模式发生了很大的变化。 随着信息技术的不断发展和Internet互联网技术的日益普及,人们越来越意识到电子商务对国家经济、企业管理和个人生活所带来的巨大影响。它满足企业、商人和消费者对提高产品和服务的质量、加快服务速度、降低费用等方面的需求,也帮助企业和个人通过网络查询和信息检索为企业下一步的发展方向提供支持。借助电子商务,企业和个人,企业和企业可以通过网络进行交易和全过程的服务。 电
13、子商务代表着未来贸易方式的发展方向,其应用和推广将给社会和经济带来极大的效益。具有强大生命力的现代电子交易手段己越来越被人们所认识,发达国家在这方面有很多年的发展历史,发展中国家也正在加紧制定总体发展战略,大力促进电子商务在国民经济各个领域的应用,力争在越来越激烈的国际竞争中占据有利的地位。因此,对于网上购物技术的研究和实现,以及搭建一个实用的网上商店是很重要的。无论在国内还是在国外,电子商务都还处于起步阶段。最近几年电子商务得到了迅速的发展。尽管各个国家具体情况不同,但是基于对国家经济发展的预测,各国政府都很重视电子商务,并且积极地发展电子商务。 在发达国家,电子商务的发展非常迅速,通过In
14、ternet进行交易己成为一种潮流。基于电子商务所连带出的商品交易方案、电子结账方案和信息安全方案等,已逐步成为国际信息技术市场竞争的焦点。随着电子商务的日益发展,产生了虚拟银行、网络营销、网上购物、网络广告等新兴信息产业,从侧面反应了电子商务正在对社会和经济产生着深刻的影响。 在电子商务过程中,通过人与电子通讯方式的结合,极大地提高了商务活动的效率,减少了不必要的中间环节。同时,电子商务的发展也将转变政府的行为。在电子商务逐渐变的流行的时代里,当企业应用电子商务进行经营,银行实现金融电子化,以及消费者实现网上消费的同时,也将对政府管理行为提出新的要求,国外在这方面有很好的法律法规加以约束,防
15、止商业欺诈行为。国内在这方面做的就没有国外的好,没有一定的规范加以约束,我们经常可以看到一些消费者在网上购买的东西和实际不一样,发现上当后我们也无能为力。 在国外,XML技术已经在电子商务领域里得到广泛应用。由于它具有自描述性、内容与显示相分离、独立于平台等特点,并且提供了一套跨平台、跨网络、跨程序语言的数据描述方式,已逐渐成为科学与业务应用中数据表示及Web应用中数据交换的标准格式。1.2 课题研究的意义首先,对于消费者来说:第一,可以在家“逛商店”,订货不受时间的限制;第二,获得较大量的商品信息,可以买到当地没有的商品;第三,网上支付较传统拿现金支付更加安全,可避免现金丢失或遭到抢劫;第四
16、,从订货、买货到货物上门无需亲临现场,既省时又省力;第五,由于网上商品省去租店面、召雇员及储存保管等一系列费用,总的来说其价格较一般商场的同类商品更便宜。其次,对于商家来说,由于网上销售没有库存压力、经营成本低、经营规模不受场地限制等,在将来会有更多的企业选择网上销售,通过互联网对市场信息的及时反馈适时调整经营战略,以此提高企业的经济效益和参与国际竞争的能力。再次,对于整个市场经济来说,这种新型的购物模式可在更大的范围内、更多的层面上以更高的效率实现资源配置。综上可以看出,网上购物突破了传统商务的障碍,无论对消费者、企业还是市场都有着巨大的吸引力和影响力,在新经济时期无疑是达到“多赢”效果的理
17、想模式。2 系统的开发环境2.1 MyEclipse简介 在开发本平台中所用到的开发工具就是是知名的java项目开发工具MyEclipse。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的一种扩展,利用MyEclipse,我们可以在数据库和J2EE的开发、发布,以及在应用程序服务器的整合当中极大地提高系统的工作效率。MyEclipse是一个功能非常丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javascript,
18、SQL, Hibernate。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。2.2 Tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML(标准通用标记语言下的一个应用。)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,
19、它实际上作为一个与Apache 独立的进程单独运行的。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。2.3 MySQL数据库数据库使用的是MySQL开源数据库。MySQL是一个开放源码的小型
20、关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。系统特性:(1)使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植
21、性。(2)支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、 OS/2 Wrap、Solaris、Windows等多种操作系统。(3) 为多种编程语言提供了API。这些编程语言包括C、C+、Python、Java、Perl、 PHP、Eiffel、Ruby和Tcl等。(4)支持多线程,充分利用CPU资源。(5)优化的SQL查询算法,有效地提高查询速度。(6)既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。(7) 提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift
22、_JIS等都可以用作数据表名和数据列名。(8)提供TCP/IP、ODBC和JDBC等多种数据库连接途径。(9)提供用于管理、检查、优化数据库操作的管理工具。(10)支持大型的数据库。可以处理拥有上千万条记录的大型数据库。(11)支持多种存储引擎。(12)Mysql是开源的,所以你不需要支付额外的费用。(13)MySQL使用标准的SQL数据语言形式。(14)Mysql对PHP有很好的支持,PHP是目前最流行的Web开发语言。(15)Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统。3 系统开发的思想与技术3.1 JSP技术与MVC本系统采用jsp技术,基于MVC
23、模式开发,使用SSH框架(struts2、spring、hibernate)来增加系统的开发速度。所谓的MVC模式是Model-View-Controller的缩写,中文翻译为模式-视图-控制器。程序就是用struts2和hibernate这两个框架来实现模型层和控制器这两层,jsp实现视图这一层。一般来说程序就是在数据库和页面之间起桥梁作用的,jsp页面请求先到action,再到dao,再回到action,回到jsp页面,action主要处理来自页面的请求,dao主要是和数据库的交互,struts2主要用在action,处理来自页面的请求,处理完请求后跳转回页面。Hibernate主要用在d
24、ao,包括对数据库的增、删、改、查的操作,spring控制程序的流程。3.2 S.S.H框架 S.S.H框架是J2EE应用中struts2+spring+hibernate三大免费开源框架的结合使用, 它可以看成工具,也是中间件。他是用来提高我们的开发效率,提高我们软件产品的可维护性、可扩展性乃至敏捷性的。他们里面有很多优秀的设计理念及模式应用。比如,struts属于MVC框架,关键是要了解MVC的概念及大致原理;而hibernate属于ORM系统,属于持久层的解决方案,同样需要对ORM的概念及原理有一个总体的了解。而spring属于应用程序框架,其核心是IOC容器以及AOP,Spring中还
25、集成了很多适用东西,比如对JDBC的封装、自己的MVC、对动态语言的简洁访问等,它由以下3个框架构成:Struts2框架:Struts2是Apache组织的一个开放源码项目。Struts2是一个比较好的MVC框架, 提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Custom tag library。Spring框架:Spring 的核心是个轻量级(Lightweight)的容器(Container),它是实现IoC(Inversion of Control)容器、非侵入性(No intrusive)的框架,并提供AOP(Aspect-oriented progra
26、mming)概念的实现方式,提供对持久层(Persistence)、事务(Transaction)的支持,提供MVC Web 框架的实现,并对一些常用的企业服务API(Application Interface)提供一致的模型封装,是一个全方位的应用程序框架(Application framework),除此之外,对于现存的各种框架(Struts、JSF、Hibernate 等),Spring 也提供了与它们相整合的方案。Hibernate框架:Hibernate 是一个开放源码的 ORM 持久层框架。作为优秀的持久层框架实现,Hibernate 框架提供了强大、高性能的对象到关系型数据库的持
27、久化服务,开发人员可以使用面向对象的设计进行持久层开发。简单的说,Hibernate 只是一个将持久化类与数据库表相映射的工具,每个持久化类实例均对应于数据库表中的一个数据行而已。用户只需直接使用面向对象的方法操作此持久化类实例,即可完成对数据库表数据的插入、删除、修改、读取等操作。4 系统分析4.1 系统需求分析开发一个网上购物商城系统前,首先需要考虑用户的需求是什么,即该网站应该实现的主要功能。通过相关调查发现,在编写网上购物商城系统时,应将登陆者分为两种角色,即注册会员和后台管理员。会员在登陆进入该网上购物商城后,不仅可以查看其各种服务条款,还可以选择查看各种商品的详细信息并选择购买。此
28、外,会员还能查看自己的详细订货信息。管理员登陆后,不仅可以查看商品销售情况,还可以管理会员、商品、仓库和其自身的信息。管理员可以根据实际情况添加其他管理员以维护该网上购物商城的购物环境和安全。4.1.1 用户功能需求用户的主要功能:注册登录功能、商品浏览功能包括使用排行榜、搜索功能、分类别功能、购物车功能、订单管理、用户信息管理、商品评价管理、收货信息管理。 (1)登录功能。如果是网上商城的用户,购买前需填写用户名、密码即可享受商城服务。 (2)注册功能。顾客首先要注册为网上商城的用户。注册后,用户可继续如实填写详细个人信息及收货人信息,同时可修改密码、查看购物车、修改详细信息。 (3)选择商
29、品功能。顾客浏览网上商城,将自己需求的商品放入到购物车中(可在网上商城首页、商品分类、搜索商品详细信息页面进行该操作),可连续添加商品。 (4)管理购物车。顾客选择完商品后可进入购物车页面,查看自己要购买的商品,可修改某一商品数量、取消购买某商品和清空整个购物车。 (5)处理订单。对应客户购买商品信息的需求,在确定了所购商品的价格、数量等信息后,用户需要填写其收货地址、联系电话,最终生成对应的订单记录,以便于网站配货人员依据订单信息进行后续的出货、送货的处理。(6)商品评价管理。用户购买成功后,可查看自己的订单,确认收货。然后对商品进行评价,填写评价信息。4.1.2 管理员功能需求系统管理员的
30、主要功能:商品分类管理、商品管理、订单管理、商品评价管理、注册用户管理、订单统计、商品销售统计。 (1)管理订单功能。管理员可以查询订单,根据用户是否确认、是否付款、是否发货将订单分类并进行管理。(2)管理商品功能。管理员可以添加、查询、修改、删除商品。(3)会员管理功能。管理员可以查看管理员和用户信息并进行添加、删除、修改。(4)系统管理功能。管理员可以上传,删除相关图片。(5)用户评价管理。管理员可以实现查看、删除用户评价的具体信息。4.1.3 性能需求数据精确度: 价格单位保留到分。适应性:购物流程要简单明了,产品图片要清楚,产品信息描述准确。4.2 可行性分析4.2.1 经济可行性 由
31、于开发本系统所需的硬件和软件环境,市场上都容易购买到或从相关网站下载,系统成本主要集中在本管理系统的开发与维护上,对用户不造成过重的经济负担。而一旦此系统投入使用,不仅可以减少商家的工作强度,提高工作效率,而且方便了用户的购买,打破了传统的销售模式,极大限度的方便了用户,也为系统的进一步推广创造了条件,此外,系统开发的周期较短,人员经济支出不大,从经济方面来说开发此系统是可行的。4.2.2 技术可行性本系统基于B/S架构和MVC模式,主要包括前端系统界面的开发以及后台数据库的建立以及维护两个方面。对于前者要求应具备功能完备、易于使用等特点,而对后者则要求能建立数据一致性和完整性强的数据库。本系
32、统采用MyEclipse和MySQL分别作为前端和后端的开发工具。这两种工具能与Windows XP和win7系统很好的兼容,因此该系统在技术上是可行的。4.2.3 操作可行性本系统是一个基于B/S模式,使用户无论身处何地,都能在浏览器中浏览商品信息,自由选择商品,购买商品,在操作使用上十分方便。而管理员也可以通过浏览器对商品数据库进行增删查改,并处理用户购买的信息。从以上的分析可以得出该系统可以满足操作方便可行的需求。5 系统详细设计与实现5.1 设计目标 对于典型的数据库管理系统,尤其是网上购物商城这样数据流量比较大的网络管理系统,必须要满足使用方便、操作灵活等设计需求。本系统在设计时应该
33、满足以下几个目标: (1)界面设计美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。全面展示商城内所有商品,并可以展示最新商品。 (2)实现网上购物。 (3)商品销售排行,方便顾客了解本商城内的热销商品及帮助企业领导者做出相应的决策。 (4)查看商城内的帮助信息。 (5) 系统最大限度地实现易维护性和易操作性。 (6) 系统运行稳定、安全可靠。5.2 系统总功能图系 统管理员用户商品分类管理 商品管理 订单管理商品评价管理 用户管理商品销售统计 订单统计 用户信息 订单管理 购物车 商品浏览 注册登录 商品评价收货信息管理 图5.1 系统功能图5.3 系统用例图 对用户需求做以下分分
34、析,从用户的角度看到的或需要的系统功能,在本系统的UML建模中,可以创建以下的参与者:用户,管理员。从用户角度可以有以下一些操作:注册、登录、查询商品信息,搜索商品,购买商品,查看自己的购物车,用户还可以进行评价,查询自己的订单(包括订单是否发货、查询订单详情、删除订单、修改订单等)。从管理员角度管理员有以下操作:维护用户信息、查询商品、购买商品、维护订单、维护信息、处理订单。商品分类购物车注册用户 商品 评价用户信息用户系统管理员销售注册登录订单用户信息 图5.2 系统用例图5.4 程序流程图数据流程分析主要包括对信息的流动、传递、处理、存储等的分析。数据流程分析的目的就是要发现和解决数据流
35、通中的问题。接下来通过数据流图来表示数据流。数据流图(Data Flow Diagram)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。是结构化系统分析的基本工具。用户流程图如下:购物商城会员注册登陆购物分类检索热销产品精品推荐挑选商品购物车继续购物修改购物车会员登陆填写或修改用户信息结账送货方式付款完成订单收货特价商品图5.3 用户流程图图5.4 用户注册流程图图5.5 用户登录流程图5.5 系统和数据库的配置系统按通用的B/S(浏览器、服务器)模式进行设计。浏览器Web服务器数据库 图5.6 B/S结构数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计
36、的好坏将直接对应用系统的效率,以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。5.6 概念模型设计概念模型设计的典型方法是用E-R图方法,即用实体-联系模型表示。E-R方法是用E-R图来描述显示世界,E-R图包含三个基本成分:实体、联系、属性。它直观易懂,能够比较准确地反映现实世界的信息联系,从概念上表示一个数据库的信息组织情况。 注册用户管理员销售管理 统计管理管理管理 管理商品分类商 品订 单评 价注册登录用户信息管理管理管理管理管理购物车用 户收货信息管理管理 n . n n 11 n n . 1 1 1 n n 1 1 1 n 1 n 1图5.
37、7 系统E-R图5.7 数据库表结构根据平台的需求分析和功能模块的划分,所涉及的实体有商品分类、订单、订单条目、购物车、评价、商品、收货信息、用户、商品统计、订单统计。因此系统的定义数据库主要包含10张表:订单表t_dingdan,订单条目表t_dingdanitem,订单统计表t_tongjidj,购物表t_gouwuche,评价表t_pingjia,商品分类表t_cate,收货信息表t_shouhuo,商品表t_product,商品统计表t_tongjiproduct,用户表t_user。 表5.1 订单表名称类型空默认值备注idint(11)noauto_increment主键addre
38、ssvarchar(255)yes空收件人地址beizhuvarchar(255)yes空备注createtimedatetimeyes空添加时间deleteststusint(11)no0订单是否删除orderedvarchar(255)yes空订单号phonevarchar(255)yes空收件人手机sjnamevarchar(255)yes空收件人姓名statusvarchar(255)yes空订单状态xiangqingvarchar(255)yes空订单详情zongjiadoubleyes空总价useridint(11)yes空关联用户的ID 表5.2 订单条目表名称类型空默认值备注i
39、dint(11)noauto_increment主键jiagedoubleyes空价格shuliangint(11)no0数量dingdanidint(11)yes空关联订单的IDproductidint(11)yes空关联商品的ID 表5.3 订单统计表名称类型空默认值备注idint(11)noauto_increment主键chenggongint(11)no0成功的订单数dayvarchar(255)yes空日期quxiaoint(11)no0取消的订单数shengchengint(11)no0生成的订单数 表5.4 购物车名称类型空默认值备注idint(11)noauto_increm
40、ent主键createtimevarchar(255)yes空添加时间slint(11)no0数量productidint(11)yes空关联商品的IDuseridint(11)yes空关联用户的ID 表5.5 评价表名称类型空默认值备注idint(11)noauto_increment主键createtimevarchar(255)yes空添加时间orderedvarchar(255)yes空订单IDpingjiavarchar(255)yes空评价pingyuvarchar(255)yes空评语productidint(11)yes空关联商品的IDuseridint(11)yes空关联用户的ID 表5.6 商品表名称类型空默认值备注idint(11)noauto_increment主键chapingint(11)no0差评createtimevarchar(255)yes空添加时间deleteststusint(11)no0删除状态haopingint(11)no0好评impathvarchar(255)yes空图片infotextyes空简介kucunint(11)no0库存数量pnamevarchar(255)yes空商品名price1doubleyes空原价price2doubleyes空促销价tuijianvarchar(255)yes空推荐x