《软件工程_网上购物系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《软件工程_网上购物系统的设计与实现.docx(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除网上购物系统的设计与实现专业:软件工程 姓名: 指导教师: 摘 要 随着科技的迅速发展,在经济领域的网络技术应用最突出的一个例子就是电子商务。电子商务在根本上改变了传统的商品买卖的模式,使买卖双方的交易更加便捷并且降低了彼此间交易成本。网上购物系统,一种具备交互功用的物品买卖系统,它在网上创建虚构的购物商场,让购物变得轻松、快捷、方便。本系统分为两个大的模块。前台包括用户注册登录、浏览商品、查询商品、商品评价、订购商品、购物车等;后台包括对商品及其种类的管理、对用户信息查看、订单详情、评论管理等功能。本系统前台主要用JSP语言开发,后台数据库为M
2、ySQL,使用MyEclipse实现,JSP引擎为tomcat7.0.6,展现给用户的是一款以Web技术为基础、B/S架构的网上购物系统。关键字 SSH,Tomcat,MySQL,商城AbstractWith the rapid development of science and technology, in the economic field of network technology application of the most prominent example is e-commerce.E-commerce fundamentally changed the tradition
3、al pattern of commodity trading, so that buyers and sellers of the transaction more convenient and reduce the transaction costs between each other. An online shopping system, an interactive trading system, which creates fictional shopping malls on the web, making shopping easier, quick and easy.The
4、system is divided into two large modules. The front desk includes the registration of the user and its type, the user information view, order details, comment management and other functions.The front of the system using JSP language development, the background database for MySQL, the use of MyEclips
5、e implementation, JSP engine for tomcat7.0.6, and show to the user is a Web technology-based, B / S architecture online shopping system.Key Words: SSH,Tomcat,MySQL,Mall【精品文档】第 19 页目 录1. 绪论11.1 课题背景11.2 目的和意义12.相关技术介绍22.1 SSH框架22.2 MySQL数据库32.3 B/S结构42.4 JSP53.需求分析63.1 可行性分析63.1.1 技术的可行性63.1.2 操作可行性6
6、3.1.3 法律的可行性73.2 用户用例图73.2.1 标准用户用例图73.2.2 管理员用例图73.3 系统功能需求84.系统设计94.1 系统总体架构设计94.2 功能模块划分104.3 数据库设计114.3.1 数据分析114.3.2 数据库的详细设计125.系统实现145.1 开发环境的搭建145.1.1 Windows8系统下所用软件145.1.2 环境搭建145.3 前台基本功能的设计165.3.1 用户维护165.3.2 商品展示205.3.3 购物车215.4 后台管理的设计225.4.1 订单管理225.4.2 商品管理235.4.3 公告管理245.4.4 评论管理256
7、.系统测试256.1 前台首页的测试256.2 用户注册模块的测试266.3 商品管理模块的测试267.结束语27参考文献281. 绪论1.1 课题背景计算机Internet的兴起改变这个社会的商品贸易性质,我国一些企业从上世纪崛起。但是,因为电子商务前进的制度环境欠缺,对此制约的法律不完善,信用体系待加强引起的一系列问题,对电子商务的前进有了一定程度的阻碍。 从2000年以后,社会的一步步的前进,网络交易中各种瓶颈的制约因素一个接一个地被打破,企业的扩散也增加了对电子商务的影响。自2006年以来,我国的电子商务发展很快,其市场的交易规模从2006年的1.5亿元突增到2013年的9.7亿元,达
8、到30%的年均复合增长率。网上交易和实体经济越来越密切的结合,不断渗透在我国工业、农业、商务贸流、旅游和零售消费等多个范畴。其支撑体系,例如:物流配送、电子支付也在逐步扩大。按照iResarch中国网购市场数据可知,2016年第三季度中国网购市场交易额达1.15万亿元,与上一年相比,企业规模有了很大幅度的增长,并且继续保持平稳增长态势。国家统计局发布的数据显示,同年第三季度我国消费品零售总额达到8.2万亿元,网上购物在总额中所占的比例比去年同期增长13.9,涨幅为1.5个百分点。概言之,中国电子商务发展势头良好,呈上升趋势,设计本系统是有必要且明智之举。1.2 目的和意义网上购物和传统购物相比
9、有许多优点:1.方便搜索在线销售可使用各种检索方式,从分类、销售排名、新货等准确。2.海量信息较传统购物而言,网上购物系统拥有大量商品信息供买家选择。3.成本低,风险小,无地域限制对商家而言,在线购物打破了传统购物的时间局限性,使客户群更加壮大,增加了商品的销路和销量,并省去了实际店铺所产生的花销。对买家而言,可随时随地购物,足不出户收揽世界各地美食美物。2.相关技术介绍2.1 SSH框架SSH是用于构建灵便,易于扩展的多层Web应用程序的多个框架(struts + spring + hibernate)的集成。在组合SSH框架中,三者各司其职:Struts是一个非常流行的MVC框架,缩短了应
10、用程序开发所需要的时间,拥有很强大的拦截机制,Servlet和JSP是它的主要核心。当使用Struts 的MVC模式,就可以有一个清晰的逻辑,并可以削弱业务逻辑接口和数据接口的结合,视图层丰富的变化,使程序结构化;Spring在框架中充当着一个容器的角色,维护着各层次之间的关系。Spring具有IoC容器、轻量、AOP、促进其他框架、面向接口等特性。这些特征避免了每次都要手动开启事务,提交事务的重复代码,使开发逻辑更加清晰、更容易管理。Hibernate是开放源码的对象关系映射框架。JDBC访问数据库的代码被其封装,数据访问层复杂的重复性代码因为Hibernate而被强有力的简化了。具有较强的
11、移植性,适合各类数据库,不会改变繁琐的代码,只需变换配置就可以继续使用。在SSH框架中,其架构图如图2-1所示,对象间的调用流程如图2-2所示:图2-1 SSH架构图图2-2对象调用流程图2.2 MySQL数据库MySQL是一种开源的关系型DBMS,在所有的数据库管理语言中SQL语言是它使用比较频繁的一种。MySQL是一个中小型数据库,与其他数据库相比,它因所占的内存空间较小,速度快、可靠性较高、拥有较好的适应性而备受关注。本系统对数据库的要求不是特别高所以使用MySQL数据库绰绰有余。在本系统设计过程中,运用了MySQL-Front这一款优秀的MySQL管理工具,能够在任何地点对我们的数据库
12、有效而轻松的进行管理。2.3 B/S结构B/S结构即浏览器/服务器模式,该模式具体是这样的:得到用户在浏览器上向服务器发出的请求消息,服务器需要处理相关信息并且发送回服务器。B/S结构源自Web网络结构模型的开发。 在B/S模式下,所谓的Web服务软件和Web应用是至关重要的,Web服务软件主要是处理用户对Web应用的请求,并对web应用运行且进行管理,让客户的信息请求得到满足。 因此,系统的开发需要安装JSP引擎,在这里用到的是由Apache和Sun公司联合开发的Tomcat服务器。B/S结构的优点1具有分布式特点,打破时间空间限制,业务可以更加方便的被查询与浏览。2业务易拓展,服务器功能的
13、多少取决于增加页面的多少。3易维护,只需要更改页面,即可实现数据更新的同步。4开发简单,共享性很好。B/S架构图如图2-3所示:图2-3 B/S架构图2.4 JSP现如今信息快速发展,Java已经无处不在。手机软件、手机游戏、电脑软件都多多少少的涉及到Java,只要你使用手机、电脑等电子产品,你就会用到跟Java有关的东西。很多涉及到Java的技术都被普遍应用和认可,JSP就是其中的一个。JSP(Java Server Pages)是在服务器上运行的Java视图技术,可以使用HTML,CSS,JavaScript等客户端语言编写模板文本。JSP支持所谓的taglib,它们由Java代码支持,我
14、们可以通过该代码动态控制页面流或输出动态,一个著名的标签是jstl。JSP还具有内置的servlet代码,不需要任何外部编译可以直接运行。JSP的执行过程如下:1.客户端访问JSP页面;2.JSP文件被转变成Servlet源码;3.Servlet源码被进行了编译;4.JSP容器加载编译后的代码并运行;5.把执行过程响应到客户端。执行过程如图2-4所示:图2-4 JSP执行过程3.需求分析3.1 可行性分析3.1.1 技术的可行性MyEclipse和MySQL数据库实现本系统的主要工具,Java语言由于跨平台、容易掌握被广泛使用。大三时对Java有了一定程度的学习,大四上学期进行了实习实训对SS
15、H架构也有了一些认识和掌握,对系统数据库的实现是主要要做的工作。在校学习期间对软件分析、测试等也有一定的经历,实现了本系统在技术上的可行性。3.1.2 操作可行性本系统只需要一台PC就可以对其进行操作,而且操作方便,不需要太多的专业计算机方面的知识。根据具体提示就可以容易的执行自己想要做的事情,在日期输入方面采用下拉式日历,不用再对日期的格式纠结,操作方面具有可行性。3.1.3 法律的可行性本系统是自主设计的购物系统,很有现实意义。大部分用到的开发工具都是开源的,实现该系统没有侵权,这在法律上是可行的。概言之,开发本系统是完全可以的。3.2 用户用例图3.2.1 标准用户用例图对普通用户而言使
16、用该系统具体流程如下:未注册的用户可以浏览商品,查看公告。当需要购买时进行注册,注册完成进行登录。完成上述操作,想变更个人信息很容易,只需进去个人信息就可以对其进行所需的更新。登录后可选择商品并进行订购,把商品加入购物车后去收银台结算,提交订单后获得订单后,等待商品的到达。其用例图如图3-1所示:图 3-1 普通用户用例图3.2.2 管理员用例图管理员在这个系统中充当了主要的角色,涉及到的功能模块主要有以下六部分:如图3-2所示:图 3-2 管理员用例图3.3 系统功能需求1前台系统功能模块分为(1)商品展示模块:通过新货上架、销量排名、焦点商品、特价商品等;(2)商品查询模块:商品可按类别查
17、询也可以再搜索框输入具体名称;(3)购物车模块:将商品加入购物车后可以选择删除、数目、更新价格、返回继续购物、结算等操作;(4)用户维护模块:允许使用者注册、登录、更改个人消息等;(5)订单查询模块:可以看到历史订单以及各个订单的状态、支付金额、时间等信息;(6)公告浏览模块:用户可及时了解店铺的活动;(7)评论模块:对心仪商品进行评价。2后台系统功能模块分为(1)商品管理模块:可查询商品并对其进行编辑以及添加商品;(2)会员管理模块:管理员查看注册用户信息并对其进行操作;(3)商品类别管理模块:对商品类别以及其子类做一些所需更改;(4)订单管理模块:特权用户对订单有关情况进行了解并安排发货或
18、者拒绝该交易;(5)公告管理模块:管理员添加或者发布有关商城的消息;(6)评论模块:对买家的评价进行浏览并选择删除或保留。4.系统设计4.1 系统总体架构设计在设计本系统的时候,要尽量让人们看清楚,严格依照三层构造。JSP主要应用到了表现层,Servlet应用到了中间层,数据的储存主要运用到了MySQL数据库。具体的总体构架如图4-1所示:图 4-1 系统总体架构 4.2 功能模块划分根据所描述的功能需求,本系统能够完成以下的功能。系统的功能模块,如图4-2所示:图 4-2 功能模块图 在本系统中用户管理模块涉及到的功能较而言之有些容易。系统使用初期,用户“b”被设置为系统管理员,是由设计者手
19、动连接到数据库中的。“b”可以创建另外的管理者信息,标准用户自己处理自己所要处理的信息。主要功能如图4-3所示:图 4-3 用户管理功能模块关系图4.3 数据库设计本系统对数据库的要求不是特别高所以使用MySQL数据库绰绰有余。在本系统设计过程中,运用了MySQL-Front这一款优秀的MySQL管理工具,让我们的数据库可以在任何地方被方便的维护和管理。4.3.1 数据分析1用户注册、登录,建立用户信息数据表是必不可少的,数据项包括用户联系方式、用户名、密码、地址等;2查询商品信息和详情,不但要对类别进行管理,而且还需对每个商品进行管理,2个数据表是其下限;3下单完成以后要进行订单管理,包括基
20、本信息和订单详情等;4系统需要被管理,管理员信息数据表示需要被建立的,包括管理员信息、密码等数据项。5买家对商品要给出评价,在该系统建立消息形式是一定要的,包括所要评价信息名称、日期等。主要创建的数据项与结构如下: 用户信息:买家ID,买家名等; 管理员信息:管理员ID,密码等; 商品信息:商品ID,商品名称、单价等; 商品类别信息:商品类别ID,类别名称等; 订单信息:订单ID,用户编号,订货地址等; 订单明细信息:订单ID,商品ID,订货时间等; 评价信息:评价标题,评价日期,评价内容等。4.3.2 数据库的详细设计对数据进行分析后,将该购物系统的数据库命名为db_snaokshop,使用
21、以下几张表来存储所需要的数据。1商品信息表在该表中收录了所有商品的一些信息。如表4-1所示:表4-1商品信息表2.商品类别信息表对商品进行归类存放,让买家更容易找到所需要的货品,卖家对商品也方便管理。如表4-2所示:表4-2商品类别表3.订单信息表此表用于记录用户下单情况,让用户便于查看商品订单情况也为admin发货给了一定的数据支持。如表4-3所示:表4-3 订单表4订单明细信息表买家购买商品后,形成一个商品独有的订单号,在这订单中包含买家购买商品的具体数量和规格等内容,卖家主要根据订单信息为买家安排发货的。如表4-4所示:表4-4订单详情表5用户信息表表中主要记录了用户的ID、名称、住址等
22、信息,方便买家对自己的信息进行修改,卖家对购物者的具体信息进行管理。如表4-5所示:表4-5用户信息5.系统实现5.1 开发环境的搭建5.1.1 Windows8系统下所用软件(1)jdk1.7.0_17(2)mysql-5-winx64(3)MySQL-Front(4)apache-tomcat-7.0.6(5)MyEclipse 8.55.1.2 环境搭建(1)JDK环境变量配置第一、在Sun官网免费获取JDK安装程序,并点击安装。第二,JDK安装完成,配置环境变量。点击“设置”“电脑信息” “高级系统设置”,选择“高级”,点击“环境变量”的按钮。打开系统变量,点击“新建”,添加名为Jav
23、a_Home的变量名;变量值输入C:Program FilesJavajdk1.7.0_17,点击确定。同上新建一个变量名为:classpath,值为:.;%Java_Home%lib;%Java_Home%libtools.jar的变量,点击确定。点击Path变量,点击“编辑”,在变量值中添加:%Java-home%bin;%Java_Home%jre7bin;,点击确定。 (2)安装myeclipse8.5。双击exe文件,选择路径,根据提示逐步安装。(3)添加Struts和Hibernate。右击“工程”-“Build Path”-“Configure Build Path”找到所需要的
24、Struts2和Hibernate包进行添加。(4)安装mysql-5-winx64。点击exe文件行安装,安装完毕后,需要如下操作来测试是否安装成功。 在命令行输入mysql -uroot p123(-u后面为用户名,-p后为数据库密码),若显示如图5-1所示效果,则MySQL安装成功。图5-1 测试MySQL安装成功(5)安装MySQL-Front软件。该软件是一款优秀的MySQL数据库的管理工具,在MySQL-Front官网或者华军软件园下载后,双击下载的exe文件,按照相应提示安装即可。5.2 系统首页设计本购物商城的主界面设计如图5-2所示,进入该页面可了解到网站主要功能,左上部分为
25、用户注册、登录;公告浏览、商品查询、销量排行处于右部分,主要是为方便用户了解和购买商品。图5-2系统首页5.3 前台基本功能的设计5.3.1 用户维护使用本系统的用户提供的信息要可靠并且需要安全管理,所以用户管理在网购系统设计中具有重要的意义。该模块涉及到的功能如下:1注册(1)实现目标用户注册需要对密码进行输入、确认并填写真实的个人信息如:姓名、地址、邮箱等。用户只需按照所需填写即可。邮箱虽然不是必不可少的,但是设置这样一个东西有以下好处:第一,用户的邮箱很大程度比其他联系方式固定并且是唯一的;第二,通过用户的e-mail可以更方便的联系。在注册时,提示不符合规矩,则需重新填写。成功注册后的
26、信息会在后台数据库中存储。界面的设计如图5-3所示。图5-3用户注册模块表5-1用户注册表2登录(1)对用户登录主要流程描述用户登录要对其输入的信息进行校验,如果之前有注册,登录成功。相反,如果用户未注册,提示相应导致无法登入的信息。用户登录过程的流程图如图5-4所示。图5-4用户登录流程图用户登录界面如图5-5所示:图5-5用户登录模块表5-2用户登录表3用户修改(1)实现目标登入系统后,主界面会有“个人信息”模块,点击此处查看个人信息。在该界面可以对自己所注册信息进行查看,若要进行更改,点击“修改个人信息”就可以对不满意信息进行更改,若不需要做任何变动,点击“返回主页”就可以继续购物。修改
27、个人信息界面如图5-6所示:图5-6用户修改模块表5-3修改个人信息表5.3.2 商品展示1实现目标货品在界面上以不同的方式展现给买家。第一:将所有产品进行分类,每一类中又有其子类,将产品详细的划分,让买家更加方面的找到自己的所需;第二:分别从销量、评价、价格、上架时间四个角度把产品划分为热销商品、焦点商品、特价商品及新品上架,让买家从另一个角度了解到产品的好坏以及是否值得入手。其界面设计如图5-7所示:图 5-7 商品展示界面2实现过程所在页面名称:index.jsp通过查询相应表,按销售额字段升序排列实现。5.3.3 购物车1购物车程序流程描述用户将商品添加到购物车,点击进入购物车后,可对
28、商品进行数量的修改,满意后更新价格,进入结算中心结账或者返回继续购物,最后一起结算。当用户决定不买商品时,对购物车清空后继续返回购物。其流程图如图5-8所示:图5-8购物车程序流程图 界面的设计如图5-9所示:图5-9购物车模块5.4 后台管理的设计5.4.1 订单管理1实现目标在该模块中管理员可以了解用户下单的具体情况。在与仓库核实后若有库存,根据详细信息联系仓库进行发货,发货后点击“发货”告知用户;如果仓库没货,及时联系买家并删除订单。该界面如图5-10所示的设计:图5-10订单管理模块5.4.2 商品管理1实现目标商品可以被管理员进行删除、修改等操作,在搜索框查询具体要编辑的商品后点击“
29、修改”就可以进行上述操作,根据相应商品对其添加图片。如图5-11所示的设计:图5-11商品管理模块5.4.3 公告管理1实现目标建立该模块让商家可以在自己的系统平台上为所销售的物品打广告,买家进入商城主页后也可以第一时间了解商品的实时资讯。该界面如图5-12所示的设计:图5-12公告管理模块5.4.4 评论管理1实现目标用户对商品以及商城的建议和意见在后台显示,让管理员查看,对自家服务和商品的优劣有所了解,根据用户的评价规划商城以后的发展以及商品的更替。该界面如图5-13所示:图5-13 评论管理模块6.系统测试6.1 前台首页的测试1查询模块测试点开系统首页,然后在搜索框的右上方输入查询的全
30、名,搜索货物将单独显示,通过对系统进行大量测试,模块成功 。2商品分类模块测试测试过程是点击左边的页面的商品类别,鼠标移动到一个商品类别,会弹出其子类别,选择不同的子类别会显示不同种类的商品,反复测试后该模块无误。6.2 用户注册模块的测试在用户注册界面所有前面加“*”的都是必须填写的,“出生年月”、“联系方式”等无法知晓真假的不加入测试中。必要的测试准备的数据有:打开注册页面,输入第一组数据,单击注册按钮,系统提示表单信息不能为空,这组数据中真实姓名为Null。 然后测试第二组数据,因为密码前后不一致而无法注册。把第三组数据输入后,可以注册成功,故通过。6.3 商品管理模块的测试 1商品添加
31、点击“商品管理”,接着点击“添加商品”会出现所属子类别、名称、单价、库存、商品简介等需要填写的部分图片,类别是通过下拉列表框选择。所有内容填写成功后点击“提交”就可以在上一层界面看见所添加商品的详情(此时没有商品图片)。点击“上传图片”,就可以传对应物品图片,经多次商品的添加均成功。 2商品删除通过点击“删除”对商品进行删除操作,检查表中是否还有此记录,若无则删除信息成功。3商品修改 点击“修改”,在跳出的页面对一些商品的产品编号、所属类别、名称、单价、库存、内容简介进行修改,经多次修改,“商品管理”中均出现修改后商品的信息。 经过多次多方面的测试,均无误,该系统已经正确地实现了用户的需求,可
32、以投入使用中。7.结束语 通过长时间的学习和探索,完成了本科毕业设计以及论文的撰写,本系统需要实现的功能都已实现。实现的功能包括用户注册登录、商品浏览、商品查询、公告浏览、购物车、订单查询、商品管理、商品类别管理、公告管理等。在系统的设计开发过程中,由于以前学习过程中动手操作的不多,给自己带来了很多的麻烦。对一些开发工具不太了解,在查阅课本以及浏览网上的一些讲解,对需要用到的工具有了一定的了解并且可以很好的操作,为系统开发前期做好了准备。在设计过程中遇到的一些问题,指导老师都会悉心的讲解和指导,给予了我很大的帮助。虽然设计已经完成,但不免有些小的瑕疵,例如:商品检索时输入完整名称才可以弹出对应
33、商品。不过在往后的学习和努力下我一定可以把这个系统做的比现在更好。在设计本系统的几个月里,自己的知识不足之处比比皆是。相信以后慢慢的积累,扩充自己的知识,一步一个脚印,不断努力拼搏,就一定会实现自己的目标。参考文献1 陈静浅谈电子购物系统J.科技经济市场.2010,(06):27-282 胡燕软件工程与标准化信息技术与标准化2004(12):17-213 盛仲飙JSP中数据库访问的性能优化研究微型电脑应用2008,(9):16-174 董纪阳软件设计中的需求分析电脑知识与技术2008(28):56-575 林华灵基于Strut框架技术的Web应用中国新技术新产品2008,(14):9-116
34、何玉洁数据库原理与应用教程机械工业出版社2003:23-787 耿祥义,张跃平JSP大学实用教程电子工业出版社2014.15-308 桃子电商市场前瞻微型计算机2007(13):89-909 周建儒JSP中自定义标签的实现与部署科技信息(科学教研)2008(23):51-5310McleodManagement Information system management in practicePrentice Hall1998:43-5511Raghu RamakrishnanJohannes GehrkeDatabase Management SystemMcGraw-Hill Professional 2007:180-21312 Cassidy AInformation systems strategic planningBocaraton.FlridaSt.Luicepress1998:12-3113 Dionysios Tsichritzis C.Data Base Management Systems1977:150-53