版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于SSM的网络书城的设计与实现目录TOC\o"1-3"\h\u摘要 摘要当今社会随着互联网的快速发展,人们已经对互联网认知越来越全面。网上购物平台逐渐兴起,并且发展迅速。网上购物的优点有很多,物品丰富、价格实惠。最大的优点就是能够节约时间,避免去实体店有时还要排队的情况。因此本次项目主要是针对购买图书这一方面开发一款简约实用的网上书城。本次项目书写的论文主要分为六大章节,分别是绪论、系统开发环境及技术、系统分析、系统设计、系统实现、系统测试。其中第四章和第五章比较重要,系统设计主要是一些前台的功能和后台管理模块的功能的设计方案。第五章主要是对第四章的主要实现包括文字解释,具体实现步骤。例如调用了什么类的什么方法。还有部分代码的展示以及流程图的设计等。本次网上书城系统主要是采用当下比较热门的SSM+JSP技术另外以MySQL数据库,在系统设计方面也采用了比较流行的B/S架构开发而成的。网上书城系统的主要用户分为管理员、商家和会员,会员可以浏览图书、加入购和购买操作,管理员和商家为后台进行图书、订单、类目等管理,通过以上部分。基本上实现了整个网上书城项目。关键词:网上书城;JSP;MYSQL;B/S;SSM第1章绪论1.1课题背景及意义近些年来,随着网络的不断普及和快速的发展,使我国的各行各业逐渐对互联网有了新的认知,各企业也开始使用互联网融入他们的工作中。在此之前我国的互联网发展速度还是比较缓慢的,再加上人们对新鲜事物不能很快的接受和认可,所以各行各业的发展也因此受到阻碍。自从两千年以来我国的计算机技术发展的越来越成熟,不仅解决了以上问题,人们也能抓紧时代的潮流,对互联网的认可度不断提高。而如今,互联网更是我们日常生活中不可或缺的一部分,它改变了人们的生活方式。在以前,互联网还没有普及的时候,图书馆工作人员的工作量也是相当的大。他们对图书的管理也是相当的费劲。因为那个时候没有互联网无法实现在电脑上进行对数据等相关信息的管理,所以他们一般都是准备一个厚重的笔记用笔对图书的信息一个个的抄写记录、分类、收藏、等操作,这样的工作效率可想而知。不仅如此,整理好一份图书的管理信息还要通过备份,也就是说再用手工抄写一遍以防数据丢失,据相关数据表明图书管理人员整理好一批新进的图书时长可达数月,如果当时有计算机,几小时的工作量骤增到几个月,这中间的差异不言而喻。而如今,计算机技术已经发展的相当成熟,不管是从硬件还是从软件方面都取得了很大的突破。电子计算机最大的特点就是计算的速度快,准确度高,能够根据程序自动执行的本领,而且有着很大的存储量。结合互联网和计算机以及相关开发工具开发出的一款网上书城项目不仅给用户带来了很大的便利,而且大大的增强了管理者的效率。1.2国内外研究现状网上书城是近些年来新出的一种在互联网上购书的方式,1995年亚马逊成立的一家公司可以说是第一家国外专门卖书的电子商务公司。不仅如此,那时它是全球最大的网上图书销售平台,几乎垄断了整个美国图书市场。近些年来电子商务的高速发展使其发展成了三大类型,即:B2B、B2C、C2C。其中B2C商家面向消费者这种形式是最常见的。近年来也出现了一些其他的图书型的网络电子商务公司。在国外网络购书平台一般是从网上下单之后,通过信用卡或者快递商品送到后使用现金支付。对于过内来讲智能手机和支付手段的快速发展使网上购物变得越来越新潮。目前国内最大的图书销售平台当当网在这方面是相当有发言权的。同时像京东、淘宝这种非常出名的网上购物平台也是为网上图书售卖设计出了一个专门的主题,图书售卖占有了一席之地。如今市场上的激烈竞争,在价格不断压低的情况下,设置不同的活动来吸引顾客的眼球,提高服务质量。这种现象也是越来越明显,我们不能仅限于其表面,更要明白读书的本质是为了扩展我们的视野,提高自身涵养。网上书城的优势是相对于实体书城来说的,它是信息化时代的一个标志之一,相较于普通的书店,它的最大便利之处就是节约了很多的宝贵时间。在21世纪的今天时间的宝贵性是不言而喻的。其次是网络书城里面的图书种类繁多,并且没有了实体店租房和水电等各种费用,所以说成本方面也是比实体店有很大竞争力的。现在的人们更愿意从网上买东西,这是互联网发展到现在而演变的一种生活方式。
第2章系统开发环境及技术2.1系统开发技术JSP它继承了Servlet,但与Servlet技术不同的是它不仅仅只有java代码,而且还可以写前端页面的标签。如果说HTML写出的页面是静态的话,那么JSP写出的页面可以说是动态的。Mybatis框架它的内部封装了Jdbc用起来比Jdbc更方便,少了很多的繁琐的步骤。它只是让开发人员关心,如何更好的书写sql语句。开发人员在书写sql语句之前,需要进行相关的配置,首先需要导入mybatis的jar包(如果是maven项目可以直接导入相关依赖)和MySQL的驱动jar包然后配置主配置文件也就是mybatis.xml文件最后再dao接口中写入一些方法,创建mapper映射文件,在mapper映射文件配置好后写入相关的sql语句即可。Spring是一个处理逻辑业务的框架 ,因为Spring是一个容器所以可以整合其他优秀的框架于一身把其他的框架里面的对象放到这个容器里面进行管理,创建使用。SpringMvc是一个做web开发的框架,在ssm中界面层,接收用户请求,显示处理结果的,它实际上就是Spring框架中的一个模块。SpringMvc的使用就是基于Spring的,容器的概念,SpringMvc会创建容器,WebApplicationContext.SpringMvc作为容器是创建和管理控制器对象的,使用@Controller创建控制器对象。2.2系统开发环境本系统的开发工具是Eclipse是目前开发界中比较常用的开发工具之一,开发的模式是基于B/S架构的。数据库工具用的是Navicat,它是一个界面非常简约,并且非常容易操作的数据库管理工具。Tomcat作为服务器进行部署后端代码并运行。
第3章系统分析3.1可行性分析可行性分析就是通过不同的角度对整个系统进行分析验证,通过一系列的分析来论证拟建整个项目是否可行,同样指出整个项目的优点和不足之处。本次项目的设计与实现主要从技术可行性、操作可行性等方面进行论述。1.技术可行性本次主要用到的技术是JSP和SSM框架,技术方面都已经发展的非常成熟了,并且这些技术不是很难理解,所以说在技术方面是完全可行的。2.操作可行性项目设计的网上书城界面风格需要很简约,并且要设计的很人性化,各个阶层的用户进入之后直接就能上手,不需要繁琐的步骤,真正的实现轻便、快捷。因此具有操作可行性[[1]孔瑞平潘瑞民.基于PHPMySQL[1]孔瑞平潘瑞民.基于PHPMySQL的宠物网站设计与实现[J].电脑编程技巧与维护:2019,(10):93-95+104.综上所述,网上书城项目不管是从技术可行性还是操作可行性都具有很高的可行性,所以这个项目是很有开发价值的。3.2系统需求分析网上书城系统要具备基本的购书功能,要实现管理员和商家合理的管理商品,顾客合理的购买商品,模拟在线支付、发货、评价、等一般的功能,系统需求分析总共分为三个方面:用户需求分析、前台需求分析、后台管理需求分析。1.用户需求分析网上书城项目开发的目的就是提高用户的体验,让用户用着舒心、买着放心。本着以人为本的原则,来进行项目的开发设计。为了提高用户的体验感,要遵守以下几个方面:(1)网上书城之所以被设计出来就是为了解决现实生活中一些书店购买书籍的时候繁琐过程。如果遇见人多的时候还要排队等待,给人们的生活带来了一些不便,浪费了一些不必要的时间。而网上书城在设计的时候一定要遵守用户快速的体验感等原则,因为网络是虚拟的,所以可能会出现网络延时的问题,根据相关的研究当一个人的鼠标点击一个链接等待超过十秒之后还没有反应的话,人们就会变得不耐烦,甚至有想直接关闭页面的冲动。所以在设计该项目的时候一定要注意这些问题。(2)用户在打开页面等待的过程一定要设计一个加载页面的标志,这样给用户一种我在等待页面而不是服务器出现了问题,这是一个小的细节。其次就是书城设计的样式一定要简约而不简单,这是很重要的。如果把书城设计的花里胡哨这样给用户带来的视觉冲击就很不友好,给人一种很廉价的感觉。(3)页面风格简约只是视觉上的感官。更重要的还是书城里面书的种类、质量、内容等因素,从用户的角度出发,书城里面的书一定要新颖,书的质量一定要好,出售的书的种类一定要多、要全,并且有一定的质保,友好的服务态度。这样用户才会感到满意。2.前台需求分析前台的功能需求分析大致分为:首页管理、商品展示、购物车订单管理[[2]刘爽.基于改进Mahout推荐引擎的购物系统的研究与实现[D].武汉邮电科学研究院:2017,(03)[2]刘爽.基于改进Mahout推荐引擎的购物系统的研究与实现[D].武汉邮电科学研究院:2017,(03).3.后台需求分析后台管理需求分析是管理员和商家对图书、类目和用户信息等方面展开的[[3][3]杜姗.基于ASP的B2C中小企业电子商务平台[J].山东大学:2011.商家主要是对自己店里的书籍的种类、书籍的价格、书籍的销售情况、点赞量以及用户的订单、发货的物流信息进行管理。权限仅限于自己店铺里的范围,要次于管理员的权限。3.3系统用例分析1.管理员用例图系统管理员在整个网络书城中权限是最大的,管理员可以通过自己的账户和密码登录到后台管理系统,后台主要的功能有:书籍管理、商家管理、统计管理等。管理员用例如图1所示[[4][4]高琦.高校美术史论课程教学资源数据库开发探索与应用研究[J].云南艺术学院:2014.图1管理员用例图2.商家用例图商家通过自己的账户和密码从后台登录后可以进行个人信息的修改、图书的增删改查、图书库存的管理、订单管理、销售统计查看等操作。商家用例如图2所示。图2商家用例图3.用户用例图用户通过账号和密码从前端进入系统可以进行个人信息的修改、购物车管理、收货地址管理、订单信息、网站信息查看等。用户用例如图3所示[[5][5]罗忠理.农产品网上销售系统设计与实现[D].北京工业大学:2017.图3会员用例图
第4章系统设计4.1系统功能模块设计网上书城销售系统分为前端界面和后台管理两部分组成,功能模块分为两大块。4.1.1前端界面设计首页管理模块:该模块主要是启动项目进入首页,首页包括用户登录和注册功能,点击就可以相应的页面。还包括最新上架书籍的展示、关于我们、搜索功能。商品展示模块:该模块主要有商品的一级展示就是图书的分类,二级展示就是各种图书的种类,例如:儿童、百科、文艺、小说等等。分页展示功能即把图书分成多页以便浏览。购物车订单管理:该模块主要是书籍加入购物车,然后创建订单,对订单进行结算最后模拟订单支付。如图所示为前端界面设计功能模块图。图4前台功能图4.1.2后台管理功能设计1.图书管理模块:对图书进行增删改查管理[[6][6]陈杰志.图书管理系统[D].华南理工大学:中国优秀硕士学位论文全文数据库,2009,(S2).2.图书库存管理模块:对图书进行库存的入库、查询管理。3.图书订单管理模块:对订单进行查询、发货、选择物流信息等管理[[7][7]王莉莉.图书报刊销售管理信息系统的设计与实现[J].电子科技大学:中国优秀硕士学位论文全文数据库,2010,(02)[8]JDJiang,etal.ResearchofInventoryOptimizationoftheHot-sellingCommoditiesinHaitaoJianhuoOnlineStore.LogisticsSci-Tech,2017,12(3):12-23[9]
Lyon
D
A,Fuhrer
M,Rowland
T.The
JBoss
Integration
Plug-in
for
IntelliJ
IDEA,
Part
1[J].
Journal
of
Object
Technology,
2005,
4(5):7-17.[10]王金龙,张静.基于JSP+MySql的高校慕课(MOOC)教学系统设计[J].通讯世界,2017,(20):276-277.[11]赵浩翔.基于SSM框架的网上商城系统的设计与实现[D].北京邮电大学,2019.[12]葛建霞.JSP动态网页设计课程中项目教学法的应用研究[M].宿州教育学院学报,2017,20(04):160-161.[13]李春燕,李根.基于JSP技术的网络信息教学平台设计[J/OL].电子技术与软件工程,2017,(20):9(2017-10-26).[14]王浩.基于JSP技术的在线技能评测系统的设计与实现[J].数字技术与应用,2016,(12):171-172.[15]石风贵.基于SSM的选课系统设计与实现[D].电脑知识与技术,2020.4.统计管理模块:对自家店铺的销售量统计图、点赞量统计图、销售额统计图、订单统计图进行预览。5.新闻管理模块:对新闻信息进行增删改查管理。6.图书类别管理模块:对图书的分类情况进行管理,例如增加、删除等操作。7.管理员管理模块:主要对会员和商家进行管理。下图是后台管理员和商家管理功能模块图。图5后台模块管理图4.2数据库的设计数据库设计主要是对数据库表进行设计可以从Navicat菜单中直接创建表也可以通过在Navicat菜单的设计表中通过执行SQL语句创建表等进行其他操作。好的表设计不仅能提高系统的开发效率,而且能够使表与表之间的关系更加直接明了,增强可读性。4.2.1数据库实体和总体E-R图数据库中的实体,也被称为实例。它不是一些概念性的东西,而是一些实体存在的。其实它是很好理解的,随便举一些生活中的例子:像教室里的桌子、汽车的车轮、电脑里的硬件等等。1.图6是地址信息实体图,各属性信息如下所示。图6地址信息实体图2.图7是订单信息实体图,各属性信息如下所示。图7订单信息实体图3.图8是用户信息实体图,各属性信息如下所示。图8用户实体图4.图9是图书信息实体图,各属性信息如下所示。图9图书信息实体图5.图10是购物车信息实体图,各属性信息如下所示。图10购物车信息实体图7.图11是评价信息实体图,各属性信息如下所示。图11评价信息实体图8.系统总体实体图如图14所示:图12系统总体E-R图4.2.2数据库表设计数据库的表信息属于设计的一部分,下面对数据库中的各个表进行详细的介绍。表1地址信息表表2评价信息表3订单信息表表4用户信息表表5图书信息表表6地址信息表表7购物车信息表表8评价信息表
第5章系统实现前几章分别完成了系统的需求分析和系统设计等前期理论工作。整个系统也大概有了一个的轮廓,下面是对系统设计的主要功能的实现。5.1前端功能实现前端主要功能实现有注册登录模块的实现,搜索功能的实现、和购物车及模拟支付功能的等部分功能的实现。5.1.1注册功能的实现如图15所示是用户的注册页面,它的具体实现步骤:首先创建一个register.jsp页面,页面的里面给一个注册的from表单action为Register.do的路径。这样用户点击注册的时候就到跳到MemberController层,这一层是SSM框架的控制层,然后MemberControlle里面的Register方法调用其memberService.add(member)放法,通过memberService实现类方法里面的memberDao.insert(memeber)通过MemberDAO的mapper文件调用里面的插入方法,让注册的信息插入到对应的数据库表中,最后返回到login.jsp实现注册方法图15注册功能图5.1.2登录功能的实现如图16所示是登录功能的实现,输入用户名和密码然后从数据库检索相关数据,判断能否实现成功登录。它的具体实现步骤:首先创建一个login.jsp,和注册一样需要创建一个登陆的表单,action:Login.do点击登录就会的跳转到MemberController层同样里面有一个Login方法,这个方法里面有一个selectOne方法。通过调用这个方法经过service层然后到达Dao层通过其Mapper文件里面的对应的SQL语句进行和刚才输入的用户名和密码进行数据库比对,如果比对成功就会跳转到index页面,否则还是返回到login的登录页面。图16登录功能图5.1.3搜索功能的实现如图17所示是图书的搜索功能,用户输入关键词点击搜索按钮就可以进行跳转到相应书籍显示页面。具体实现步骤:通过searchProductname.do到indexController层通过indexController里面的searchProductname方法通过getAttribute把搜索的关键字存到的request域中经过service层到调用Dao层中selectAll()方法通过for循环与数据库中的数据比对,比对完成之后如果找到相关书名就返回到相关书名的界面,如果不是则可以alert一个“查询无果”。图17搜索功能图5.1.4购物车和支付功能实现购物车模块和支付模块如下面的流程图如图18所示。图18购物车支付图5.2后端管理模块设计实现后端管理模块主要是商家和管理员对后台进行管理,主要有对商家图书的管理、对订单的管理等。管理员对用户和商家的管理、图书类别的管理等。5.2.1图书管理模块实现使用商家的用户和密码登录到商家后台管理系统实现对书籍的管理,具体实现步骤:对图书的管理总共有四个按钮,分别是添加、删除、查询、和修改,查询就是请求经过三层,最后调用Dao层的mapper文件进行数据库查询返回Json格式通过Ajax异步请求输出到页面上,主要说一下添加功能的图书的图片上传功能实现它主要是通过SmartUpload组件实例化出一个mySmartUpload对象然后设置上传的格式,图片大小等操作,部分代码如图19所示。图19书籍管理功能图5.2.2订单管理订单管理主要是对用户已下单的图书进行查询和删除等管理。实现步骤:通过输入生成的订单号,点击查询功能,通过controller层中已经实例好的业务层的接口对象调用其sellectById方法转到Dao层根据对应的mapper文件查询数据库中有没有才订单号,然后进行查询操作,删除功能和查询功能类似只是SQL语句不同。如图20所示订单管理功能图。图20订单管理功能图5.2.3图书分类管理功能实现图书的分类管理,主要是进行图书类别的添加和删除。实现步骤:点击添加类别从当前jsp页面跳转到添加页面,输入数据后jsp页面会根据表单中的categoryAdd.do到CategoryController层里面的dingdanAdd方法部分代码如图21所示。图21分类代码功能图图22书籍分类功能图5.2.4对商家和会员的管理管理员对商家和会员的管理主要是对其进行增加、删除和查询,他们的实现方法是一样的,他们的查询和添加删除功能和订单的查询以及图书类目是一样的。就拿会员的为例子图23是关于用户的管理的部分代码实现。图23管理代码功能图第6章系统测试6.1测试的目的通过了上一章的系统实现,主要捡了一些主要的功能进行了实现,本章进行系统测试,这一章的系统测试就代表着整个开发流程即将结束,系统测试主要是判断系统是否可以正常运行,功能模块是否可以实现正常操作。代码是否能够执行通过,只有找出bug才能更好的解决bug这样才能不断的完善整个项目,这样符合公司中正常的开发流程。6.2测试的方案通常我们在进行测试方案制定的时候,一般有黑盒测试和白盒测试,白盒测试是指对软件中的最小单位进行测试。比如说:一个类、或者一个函数都可以说是最小单位。白盒测试的要求是比较高的,一般都是开发人员自己测试,测试的方法我们通常说的:“debug”、调试、代码走查等。黑盒测试主要是测试系统的功能能否正常运行,测试方法分为:手动测试和自动测试。手动测试比较简单,主要是测试一个系统的功能是否正常运行即可。而自动测试要求比手动测试高一些,它需要测试工程师有一定的逻辑能力和代码能力。测试成果有:测试的用例和缺陷。举个例子比如登录测试,正确的用户名在错误的密码情况下会出现什么样的情况等等。它们各有用处和优点。本次项目测试采用黑盒测试。6.3功能测试本系统选用了黑盒测试中的第二种方法手动测试,随机选了六个功能进行测试,前端三个、后端三个,具体测试内容如下表所示:表9前端用户登录测试测试编号用例名称测试流程实际结果测试结论1系统前台登录1.进入首页后点击登录2.输入账户、密码、登录正常的用户账户和密码可以正常登录测试通过表10商品加入购物车测试测试编号用例名称测试流程实际结果测试结论2图书加入购物车测试1.进入首页后点击商品。2.点击添加到购物车购物车里成功显示出刚添加的商品测试通过表11商品支付测试测试编号用例名称测试流程实际
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中政治制作教程课件
- 成长资源课件
- 厂长助理转正课件
- 郴州住房公积金课件
- 实训二:光学显微成像系统的构建与优化
- 高三政治《权利保障:于法有据》教学设计
- 高中信息技术选修四人工神经网络与深度学习教学设计
- 初中语文七年级上册女娲造人神话教学设计
- 核心素养导向的“权利与义务相统一”教学设计与实施路径
- 七年级地理《邻近的地区和国家》大单元教学设计
- 测绘生产作业指导书
- 烧腊卫生制度
- 混凝土换班制度规范
- 人工智能支持下小学英语与美术跨学科教学中的教师协作模式探究教学研究课题报告
- 化工自动化及仪表培训课程
- 2025及未来5年中国硼酐(超细)市场调查、数据监测研究报告
- 公路工程监理质量控制措施
- 基坑施工中的雨污水管道保护方案
- ZK24600型平旋盘使用说明书(环球)
- 劳动教育通论1-11章完整版课件
- 荒山荒沟土地承包合同书2024年
评论
0/150
提交评论