教学动态

您当前的位置: 首页 > 本科教育 > 教学动态 > 正文

2015届优秀毕业论文(二)
来源: 时间:2018-09-12 作者:

基于MVC的电子商务系统

计算机科学与技术   201110046   聂新友

指导老师   陈永(副教授)

 要:本文以电子商务系统的开发与应用作为设计目标,采用软件工程思想和方法进行设计。系统设计使用MVC作为系统的设计模式,运用Java web开发的各种技术。使用MyEclipse作为开发工具,采用MySQL数据库对系统数据进行存储,运用Tomcat作为Web开发服务器。该系统前台商品信息展示购买和后台信息管理构成,前台主要功能有用户注册,用户登录,商品搜索,商品详情展示,加入购物车,提交订单,在线支付等;后台主要功能有商品管理,商品类型管理,订单管理等。设计时使用JavaMail技术验证用户注册的有效性此外为保证用户在购买商品可以进行在线支付,采用连接第三方支付(易宝支付)的方式进行在线支付。

关键词: 电子商务Web编程在线支付数据库

1.概述

电子商务可以划分为广义的电子商务和狭义的电子商务广义的电子商务是指使用各种电子工具从事商业活动;而狭义的电子商务则主要通过Internet从事商业活动。

目前,很多销售模式仍然采用面对面销售的方式,但是该模式受时间、地域、环境的限制,存在着销售网点数据不统一,信息人工处理易出错等不足。通过电子商城系统能够弥补这些不足,所以构建一个电子商务平台具有很强的实用意义。

2.系统设计与实现

2.1总体设计

系统采用结构化分析与设计方法结构化分析与设计方法是一种面向数据流的传统软件开发方法,它以数据流为中心构建软件的分析模型和设计模型。其由结构化分析(Structured Analysis,SA)、结构化设计(Structured Design,SD)和结构化程序设计(Structured Programming ,SP)三部分构成。结构化分析模型的结构如图1所示:

1结构化分析模型的结构图

根据需求分析确定的系统功能,系统分为前台子系统和后台子系统,前台主要包括用户注册、登录、商品浏览、商品搜索、购物车管理、订单管理、在线支付等几个部分。后台子系统设计主要有管理员的管理(查看管理员信息,添加管理员、修改管理员信息);商品类型的管理(添加商品类型,删除商品类型、修改商品类型);商品管理(新增商品信息。删除商品信息、修改商品信息,查看已有的商品信息);订单管理。系统的功能架构如图2所示:

2电子商务系统架构图

2.2系统前台设计

2.2.1 MD5算法实现用户数据加密

为了保证用户的信息安全,有必要对用户的信息进行加密处理然后存储到数据库中,保证用户账户的安全本系统使用MD5算法进行用户密码加密处理,实现账户安全需求。在设计时通过Java API中提供MD5数据加密接口MessageDigest实现此功能,使用此接口就可以方便的对数据进行加密操作。

2.2.2 邮件激活用户注册

发送邮件的功能是使用QQ邮箱作为本系统的邮件服务器,在用户注册后给注册的邮箱地址发送激活邮件,邮件激活的流程主要有以下三步:

用户进行注册,填写符合格式用户名、密码、邮箱地址信息;

用户点击注册按钮提交信息,系统获取用户的信息,并对用户信息进行校验;

信息校验成功后,调用业务逻辑层代码向用户发送激活邮件;

激活邮件内容如图3所示:

3激活邮件内容

2.2.3 在线支付

易宝支付接口调用流程是用户发送支付的请求时,浏览器会将请求的表单数据提交给服务器。当支付完成后,服务器会以http请求的方式回调,回调的方式有两种,一种是浏览器重定向的方式,这种方式是不可靠的方式;另一种是通过点对点通信的方式,是可靠的方式。支付流程如图4所示:

4易宝支付流程图

系统设计时采用易宝支付公司提供的免费测试账户,其信息配置在merchantInfo.properties的文件中,将其放在项目的路径下即可。同时设计一个支付工具类,读出配置文件的信息,当用户发出支付请求时处理用户提交表单的支付信息,获取支付信息的必要参数,如业务类型、订单编号、支付金额、商品名称、银行支付通道编码等。支付完成后通过回调的方式通知用户支付状态,并且更改订单状态信息。

2.3系统后台设计

2.3.1 管理员权限设计

管理员管理也就是对系统管理人员账号信息的管理,系统的管理员分为超级管理员、级管理员和级管理员。超级管理员拥有系统的所有权限,可以对后台系统进行所有操作,普通管理员只能拥有后台系统部分功能的权限。

2.3.2 UEditor实现商品添加

UEditor是基于BSD协议开源的,并且在允许范围内可以对所有源代码可自由修改和使用,是由百度WEB前端研发部开发的所见即所得的开源富文本编辑器,具有轻量、可定制、用户体验优秀等特点。使用UEditor可以解决开发者在开发富文本编辑器所遇到的难题,节约开发者因开发富文本编辑器所需要的大量时间,从而提高开发效率,降低了开发成本,因此,为了达到商品展示的效果,本系统采用UEditor对商品进行编辑操作。

3.系统测试

3.1合法性校验

软件测试是软件开发过程中必须经历的阶段之一,在经过需求分析、设计和编码等阶段的开发之后,系统基本完成,接下来将进入软件测试阶段。软件测试的方法主要有白盒测试(结构测试)和黑盒测试(功能测试)等。

1.注册功能:

问题:用户名和密码校验时没有弹出提示信息,不够友好邮箱和联系电话的格式未校验。

解决方案:修改源代码,添加用户名、密码、邮箱和联系电话的校验,添加跳出提示信息的代码。

最终结果:各字段都存在校验,不正确时跳出提示信息,测试通过。

Case 1.注册时,当两次输入的密码不一致时,弹出提示信息,告知用户两次输入的密码不一致,请重新输入!如图5所示:

5用户名密码校验结果图

Case 2.当用户输入的注册邮箱格式不正确时,系统弹出提示框,提示用户请输入正确的邮箱地址6所示:

6邮箱地址不正确时校验信息

2.登录功能:

发现问题:用户名和密码不对时限制登录,但没有提示信息,不友好。

解决方案:添加跳出提示信息的代码。

最终结果:用户名或密码不对时给出提示信息。当用户登录系统时,如果用户名和密码不正确,或者还未进行系统注册,系统会提示用户不合法请确认用户名与密码是否正确的提示信息测试结果如图7所示:

7登录系统用户账号的合法性校验

4.结论

本系统使用MVC架构模式采用软件工程方法学的设计思想,设计实现了基于MVC电子商务系统,并且重点实现了用户密码加密用户注册邮件激活以及在线支付等功能系统经过测试后,具有良好可靠性和稳定性。

参考文献

[1]郑阿奇. MySQL教程[M].北京:清华大学出版社,2015.

[2]孙卫琴.TomcatJava Web开发技术详解[M].北京:电子工业出版社,2013.

[3]梁栋.Java加密与解密的艺术[M].北京:机械工业出版社,2010.

[4]张海.软件工程导论(5)[M].北京:清华大学出版社,2008.

[5]曹明元,効文颖,王丹,.电子商务网店美工与视觉设计[M].北京:清华大学出版社,2015.

Electronic commerce system based on MVC

Computer Science and Technology   201110046  Niexinyou

Supervisor   Chenyong(Associate professor)

AbstractIn this paper, the development and application of electronic commerce system as a design goal, using software engineering thinking and approach to design. System using the MVC design as the design of the system model, using Java web development of various technique. Using MyEclipse as a development tool, using the MySQL database on the system data for storage, using Tomcat as a Web development server.

The system information display to buy goods are at the front desk and the background information management, the main functions of a front desk are user registration, user login, Product Search, Product details display, add to cart, submit orders, online payments; Background main functions are Product management, Product type management, order management. Designed to verify the validity of user registration, use JavaMail technology. In addition to ensure that users are able to make online payment to purchase goods, by connecting the third-party payment ( Yeepay) way online payment.

Keywords: E-commerce, Web programming, online payments, database