版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于JavaEE的网上图书销售平台的系统分析摘要目前互联网的开发技术中正是Java语言火热的时候,springBoot是目前javaEE领域比较通用的框架技术,它实现了自动配置,有效了解决了springMVC中”配置炼狱”的烦恼。SpringDataJpa框架是应用与Dao层的框架,SpringDataJPA是属于Java中持久层里的ORM框架。ElementUI组件是饿了么团队前端开源的UI框架,有许多现成的前端组件。Vue.js是一套渐进式的前端框架,用于构建用户界面,其目标是通过尽可能简单的API实现响应和复合视图组件的数据绑定。本毕业设计基于以上技术,加上MySQL数据库对数据进行管理。将图书的交易经营由原来的实体店铺买卖的模式转向通过互联网进行交易的转变,转变后商家可以通过系统对交易的物品,交易的内容信息等进行可视化的操作管理,有俩点意义,第一,在当今工作繁忙的社会环境下,通过互联网平台购买到自己需要的书籍,有效节省了时间成本与劳动成本。第二书籍商品的商家可以通过计算机对商品信息进行管理,顾客和商家对交易内容都可以进行可视化操作,对于交易双方来说,交易的信息根据逻辑变得更加清楚明了了。关键词:springBoot;Jpa框架;VUE前端框架;ElementUI组件;MySQL数据库。目录TOC\o"1-3"\h\u24781绪论 1132231.1项目背景和意义 1209121.2国内外研究现状 1202631.3本章小结 235122系统运行环境及技术简介 2133362.1运行环境 2179082.1.1IDEA开发工具 2163432.1.2Redis服务器 3185462.1.3MySQL数据库 3321982.1.4Windows操作系统 367972.2第三方开源技术 3203242.2.1SpringBoot 328282.2.2JPA持久层框架 357522.2.3Maven管理组件 446642.2.4ElmentUI组件 4310732.2.5Vue框架 4223622.2.6Axios技术 4232962.3本章小结 5121733需求分析 5109703.1可行性分析 5183783.1.1技术可行性 559873.1.2经济可行性 5318863.1.3操作可行性 6152533.2功能分析 6132083.3用例图分析 7271943.3.1游客用例图 7288013.3.2用户用例图 732233.3.3管理员用例图 8254133.4本章小结 8305524系统设计 9266194.1整体架构设计 9286504.2功能模块设计 9269494.2.1客户端设计 9116934.2.2管理端设计 11254064.3数据库设计 12157744.4本章小结 16294325系统实现 1793225.1整体流程实现 17324525.2首页模块 18148625.2.1书籍搜索 2096915.2.2公告轮播图 20213505.2.3图书分类 21230685.3登录/注册功能模块 22126455.4图书详情页模块 23238085.5购物车模块 24109455.6订单模块 25248215.6.1下单功能页 25277445.6.2订单支付 25232275.6.3我的订单 26199115.7个人中心模块 28108735.7.1账户名修改 29251735.7.2密码修改 29170555.7.3用户退出 30299755.8图书分类管理模块 30253085.8.1新增分类 30195725.8.2编辑分类 31285845.8.3删除分类 31153645.9图书详细管理模块 32294925.9.1分类图书查询 32323335.9.2新增图书 32314185.9.3编辑图书 33238675.9.4删除图书 34234355.10所有订单管理模块 34101305.10.1订单信息展示 3413545.10.2订单操作 3588705.11用户管理模块 35294905.11.1信息展示 35253745.11.2修改用户名 3672595.11.3修改密码 3732175.11.4注销用户 378575.12本章小结 37141356系统测试 38183496.1客户端测试 38297086.1.1登录/注册功能测试 38286376.1.2搜索图书功能测试 39274086.1.3购物车功能测试 3964496.1.4下单功能测试 40114086.1.5“我的订单”模块测试 40251856.2服务端测试 41219066.2.1图书分类管理模块测试 41206716.2.2图书详细管理模块测试 42268536.2.3所有订单管理模块测试 43111686.2.4用户管理模块测试 4323966.3本章小结 44266357总结与展望 45264347.1系统总结 45202257.2系统展望 45521参考文献 46PAGEPAGE591绪论1.1项目背景和意义随着互联网行业的崛起,其对我们生活相关行业进军的势头也越来越猛,互联网的确有效的便捷了我们的生活,使我们获得了更多的知识,信息和便捷。本选题的目的是为了将图书的交易经营由原来的实体店铺买卖的模式转向通过互联网进行交易的转变,转变后商家可以通过系统对交易的物品,交易的内容信息等进行可视化的操作管理,有俩点意义,第一,在当今工作繁忙的社会环境下,通过互联网平台购买到自己需要的书籍,有效节省了时间成本与劳动成本。第二商品书籍的商家可以通过计算机对商品信息进行管理,顾客和商家对交易内容可以进行可视化操作,对于交易双方来说,交易的信息根据逻辑变得更加清楚明了了。Java语言为当前软件开发市场主流的语言[],采用Java语言开发由于其通用性强,所以有利于今后对系统的更新与维护。因此需要开发出网上图书销售平台。1.2国内外研究现状随着信息时代的到来,不仅网络交流的质量越来越稳定,开发技术也随之越来越多种多样,越来越完善高级,从最初的机器语言、汇编语言、到如今的高级语言C、C++、JAVA等,计算机编程语言正在进化的越来越友好,使更多人能够学习它并开发程序系统,但就目前国内外软件市场来说,JAVA语言还是开发语言中稳定性,通用性、灵活性比较好的一种,使用率是最高的,在2019年4月发布的中国编程语言排行榜中,排名第一的为JAVA语言,使用率为29.28%,排名第二的是CPP,使用率是16.08%,第三为JavaScript,使用率是15.09%,python只排在了第五位,故我的系统后端采用JAVA语言开发,而SpringBoot是JAVA框架Spring系列当前的主流框架。前端Vue脚本框架属于JavaScript语言也是近些年比较流行的框架,Vue.js框架是由我国独立开源开发者尤雨溪开发并于2014年2月上线,Vue.js框架是MVVM模式中前端的渐进式脚本语言框架,它是轻量级的,有很多独立的功能或库,在vue里我们可以根据自己的项目实际情况来选用它的一些功能。册本出版物通过互联网进行交易,不仅是传统交易方式的升级与进步,也是今后的形式趋势,现在国内比较有名气的图书交易商城有卓越中国书网、当当网等。它们各有所长,就拿当当网来说,它售卖的书籍种类十分丰富,而且价格实惠,当当网在多元化与多样性这方面占有很大的优势,而卓越图书交易商城售卖的图书都会跟随的上世界当下的潮流趋势,不断更新成为售书界的标杆[]。当前世界上做的最大最成功的在线购书平台当属亚马逊了,虽然亚马逊现在是世界上最大的电商平台,什么商品在亚马逊平台上都有售卖,但是亚马逊最早就是靠网上销售书籍起家的,到如今亚马逊是创始人成为世界首富,早在上世纪90年代末,亚马逊就拥有了450多万的消费者,到现世纪初在线购买书籍的人竟达到了32亿多,创造了78亿美元的销售金额神话。亚马逊平台的网络购物环境便捷舒适,同时,平台还拥有310多万种图书,并且价格优惠,折扣力度都在20%-50%之间。加入WTO为电子商务发展带来了机遇,正如我国刚刚结束的两会所提出的,今后15年的生活趋势所指也必然为互联网+的天下。1.3本章小结本章主要介绍了本系统开发的项目背景和意义,项目背景中主要说明了当前书店的销售和管理的状况,意义为需要通过开发本系统才能跟上时代的步伐,实现用互联网+对当前书店的销售和管理进行转变,从而获得进步。并介绍了JAVA、Javascript等语言的市场流行使用率,和国内外互联网图书销售平台的现状各自优势,比如介绍了当当网、亚马逊等平台的优势情况。还有今后生活的趋势所向等。2系统运行环境及技术简介2.1运行环境2.1.1IDEA开发工具IntelliJIDEA开发工具支持Java、JavaScript、PHP等多种语言开发,它内部设计有代码自动分析功能、不仅可以对开发人员输入代码的正确或错误进行校验提醒,还能通过开发人员输入的前半段代码而自动联想出后半段代码,代码的自动提示功能有效的提高了开发效率。不仅如此,同时IDEA内部还自带git、github、svn等各种版本控制工具[[1]葛萌,王颖。基于SpringBoot+SSM框架的进销存管理系统设计与实现[J].科学技术创新,2020(24)[2]陈蓉,[1]葛萌,王颖。基于SpringBoot+SSM框架的进销存管理系统设计与实现[J].科学技术创新,2020(24)[2]陈蓉,徐红。我国网上书店的现状及制约因素浅析[J].商场现代化,2006(28):98-99.[3]胡明,文翠,黄川。基于SpringBoot的毕业论文管理系统设计和开发[J].电脑编程技巧与维护,2020(7)[4]徐波。基于WAMP的图书馆信息管理系统的研究与设计[J].电脑知识与技术,2012(12)[5]熊永平。基于SpringBoot框架应用开发技术的分析与研究[J].电脑知识与技术,2019(36)[6]彭建高简国明倪婧陈渊末梁晓灵陈晓峰。大学生学术论文查重系统的设计开发与应用实现[J].信息技术与信息化,2019(08)[7]朱运乔。基于SpringBoot+SSM框架的Web应用系统搭建与实现[J].电脑编程技巧与维护,2019(10)[8]李之奇,封成玉,徐一凤,王毅璇,王皓。基于SpringBoot的工控组态软件Web发布系统设计与实现[J].信息技术与网络安全,2019(4)[9]魏李方。高校移动图书管理系统的设计与实现[J].电子技术与软件工程,2020(2)[10]王丹,孙晓宇,杨路斌,高胜严。基于SpringBoot的软件统计分析系统设计与实现[J].软件工程,2019(3)
2.1.2Redis服务器Redis,也叫做远程字典服务,是一个开源、网络支持、内存持久、日志类型、键值数据库,用C语言编写,具有多语言API。与Memcached一样,数据被缓存在内存中以此提高效率。2.1.3MySQL数据库MySQL是一个关系型数据库管理系统,因为它软件本身并不大、但操作数据反应速度却很快,而且软件本身源码是开放的,因此,MySql被大多数中小型企业在软件开发中采用[]。开发者可根据分析需求设计相关的表结构,并为每个表结构中的字段设置符合实际需要的类型。2.1.4Windows操作系统Windows系统是一款具有图形界面的操作系统[],各种操作便捷也符合大多数用户使用习惯;该系统多任务,多用户的特点为项目的开发提供了良好的平台,能与IntelliJIDEA共同协作,更加利于开发。2.2第三方开源技术2.2.1SpringBootSpringBoot是目前软件开发市场上Java语言开发中主要用到的框架,它出现的作用是为了简化Spring框架开发时搭建项目后台Java端初始结构时的繁琐。SpringBoot框架开发时相比Spring框架开发人员通常只需要配置属性文件,就能进行注解开发。SpringBoot实际上是一个将许多可插组件(框架)与嵌入式工具(如Tomcat、Jetty等)集成在一起的框架,以方便开发人员快速构建和开发框架。2.2.2JPA持久层框架SpringDataJPA框架中的英文字母“JPA”是英文“JavaPersistenceAPI”的缩写,它是SUN公司发布的ORM规范框架,JPA有一个功能是可以通过创建的实体及所对应设置的注释,运行时自动在数据库生成相应的表结构。JPA与MyBatis都是作用于JAVA持久层的ORM框架,但是JPA比MyBatis使用起来更方便一些,它简化了MyBatis的SQL语句的编写。2.2.3Maven管理组件Maven是一个项目管理工具,能将一个完整的项目按需求拆分成几个相辅相成的模块,每个模块可共享一个核心底层以及JAR包,在将项目外包时就无需担心要将整个项目源码拷贝给外包商而只需将需要外包的模块功能独立出一个module即可;Maven拥有插件管理机制,项目中的依赖不需要手动加入,只需在pom.xml中配置插件的版本和名称,它会自动从仓库中找寻对应的插件进行安装,该种机制能有效解决因项目迁移而导致的缺失JAR包问题。由于项目自身依赖模块也会被打包成JAR包,使得项目更加安全可靠。2.2.4ElmentUI组件element-ui是饿了么前端团队创作的一套桌面组件库[]。整个ui风格简约,很实用,同时也极大的提高了开发者的效率,是一个非常受欢迎的组件库。2.2.5Vue框架Vue.js框架是一个轻量级的MVVM脚本语言框架,它有很多独立的功能或库,在vue里我们可以根据自己的项目实际情况来选用它的一些功能[]。Vue框架可以在任意前端项目中使用,使用它的成本较低,开发起来非常灵活,使用vue框架的项目也能在项目中融合其他技术,如Axios技术,ElementUi组件等进行使用,这体现了vue框架功能的强大和较好的兼容性。2.2.6Axios技术axios是前端的通信框架,在前端的开发过程中,我们必然要用到一个额外的通信框架来与后端服务器进行数据的交互[]。使用axios通信框架,前端脚本就能通过它向后端的接口发送请求以及接收后端处理后答复的数据结果,axios还有自动转换JSON数据的功能。2.3本章小结该个章段主要陈述表明了图书销售平台从0到1的创作过程需要使用到的各个方面技术,如运行环境、开发工具、数据库和主要代码框架技术等。在介绍运行环境,开发工具和主要技术的同时也使我重新巩固了一下开发使用的内容,更有利的面对后面系统的开发。3需求分析3.1可行性分析3.1.1技术可行性图书销售平台的设计实现使用SpringBoot+JPA+vue框架开发,系统整体为B/S架构,引用饿了么团队的ElementUI组件,使用Mysql数据库管理数据内容。项目为前后端分离在IDEA平台上进行开发,使用Redis对数据进行中间缓存。使用谷歌浏览器进行运行和调试。以上开发技术条件目前都可满足。以目前市场的基础笔记本性能,都能很好的运行以上所需开发工具,故图书销售平台支持技术可行性。3.1.2经济可行性此图书销售平台所用的开发技术和开发工具都是可以免费使用的,开发图书销售平台只需要开发者使用一台笔记本便可以独自一人完成。不需要花费大量的人力、物力和财力,并且通过开发本图书销售平台可以很实际的提高开发人员的技术能力与动手能力等,故图书销售平台支持经济可行性。3.1.3操作可行性本图书销售平台可以很好的在计算机浏览器中打开,页面布局合理,系统操作逻辑偏向大众化,可以让使用者在打开系统时就能顺其自然的进行下一步操作,同时,系统中有许多界面拥有提示字样与功能合体的,比如,使用者在进行登入时,没有账户,便能显眼的看到下方的“没有账户,去注册语句。”蓝色字,点击文字便能跳转注册页面进行注册等,并且本系统中使用者进行功能操作时还有诸多的文字提示进行反馈,如图书加入购物车成功、账户退出提示等。操作本系统不需要很好的计算机基础。故图书销售平台支持操作可行性。3.2功能分析本图书销售平台需要分为客户端和管理端俩个子系统。客户端顾名思义是面对消费者与游客使用设计的,所以也是系统模块较多的一端,故基础的购买流程中的功能要拥有,使消费者使用起系统来操作自然,流程完整。管理端便是面向管理者开放的了,需要拥有图书商品的管理、订单的管理以及用户的管理。客户端功能模块:图书销售平台系统的客户端的使用可以分为两种角色:游客、用户,游客是在没有登录账号情况下的角色,所以没有用户的功能权限,只能浏览首页商品书籍,通过首页搜素框输入想查找的书籍名称,搜索到商品图书。可以点击图书图片进入该图书的详情页进行查看商品图书的详细内容,价格等。在游客角色登录账户后就转换成了用户角色,用户角色可以查看自己的购物车信息,可以将商品书籍加入到购物车、直接购买下单,付款等,还可以查看自己的订单信息,收获后进行订单的评价等功能。管理端功能模块:图书销售平台系统的管理端的使用者只有一个,那就是管理人员,管理人员需要正确登录管理账号后,才能进入图书销售平台系统的管理端。管理端拥有四大管理功能模块:图书大类的分类管理、所有商品图书的详细内容管理、所有订单管理以及用户管理。分类管理和商品图书管理不仅都需要有相应的增删改查管理,还要有商品图书大类和商品图书的封面图片上传等功能,在商品图书详细内容管理模块中还要有用户对商品图书所有评论的管理功能。所有订单管理中需要拥有管理者可以使用对所有订单(如发货等)操作的功能。用户管理中,管理人员可以对用户的账户进行操作管理,如修改账户,修改密码,注销账户等功能。3.3用例图分析3.3.1游客用例图游客只能对图书销售平台系统首页商品图书、商品图书分类的的图书、搜索图书名后展示的图书进行商品图书的详细内容浏览。还可以使用注册功能转换角色为用户。游客用例图如图3-1所示。图3-1游客用例图3.3.2用户用例图用户角色拥有游客角色的所有权限,并在游客角色权限的基础上,还能够将商品加入购物车,购买商品,查看订单,评论商品等功能。用户用例图如图3-2所示。图3-2用户用例图3.3.3管理员用例图管理员角色只存在于图书销售平台系统的管理端,作为整个销售平台系统的管理者,管理员拥有图书分类管理、图书内容详细管理、所有订单管理、用户管理、评论管理等功能。管理员用例图如图3-3所示。图3-3管理员用例图3.4本章小结本章主要分析了该图书销售平台系统的技术可行性、经济可行性、操作可行性是否满足,以及分析了系统的需要分为客户端和管理端俩个子系统。并且还对系统的客户端从角色权限和操作功能,以及管理端的角色权限和四大管理功能进行了分析,作出了各个角色的用例图。4系统设计4.1整体架构设计图书销售平台的设计实现使用SpringBoot+JPA+vue框架开发,本系统整体架构分客户端、管理端,两大服务端。客户端面向游客和用户两大角色使用,角色不同,拥有的功能也不同。管理端只面向管理员使用,管理拥有管理分类、商品、订单、评论、用户等的权限。图书销售平台整体结构如图4-1所示。图4-1图书销售平台整体架构图4.2功能模块设计4.2.1客户端设计客户端是为面向游客和购书者服务的,拥有用户登录和游客登录两种角色登录权限。首页展示:首页的内容客户端的两种角色都拥有浏览的权限,根据当前市场的大数据调查统计,现在的用户十分不喜欢那些强制要求使用者要先注册或者登录账户才能进行系统信息的查看的系统,因为有时候的人们只是想要浏览一下商品的信息,或者出于微弱的好奇心对系统进行尝试性的使用,却因必须注册的条件而停止了对系统的继续探索[]。首页要拥有的功能有图书搜索功能,用户输入书名能够搜索到想要书籍。要有图书分类每个类群的图书展示。图书分类:图书分类模块展示不分角色权限,从首页进入,该模块将展示图书分类名所对应的所有图书封面和信息。图书详情:图书详情模块展示的内容一般是用户获取商品信息最详细的地方,所以该页面需要展示较详细的商品书籍信息,所以要有图书的封面图片、书名、作者、价格、出版社信息、库存等多方面的内容,还可以有商品的评论,内容等信息的展示,需要有购买和加入购物车等可操作的功能,进行下一步操作。购物车:购物车模块是用户角色才有权限使用的功能模块。游客在登录图书销售平台后,首先展示的是首页,如果游客或用户再进一步操作进入书籍详情页后,点击“添加到购物车”按钮,系统就会自动引导用户到登录页,用户必须要输入账户和密码正确登录后才可以将图书加入购物车。在购物车中要给用户展示用加入的商品信息,至少有图书名称、价格、购买数量等信息。购物车拥有删除商品的功能,有点击购买的按钮,选择商品,点击购买按钮,系统就跳转到了下单页面。下单功能:下单功能是用户购买书籍时必须使用的功能之一。用户可以通过商品书籍详情页中的购买按钮点击直接进入下单页面,也可以选中通过事先加入到购物车中的商品书籍点击购买按钮进入。下单模块页面表明了用户所要购买书籍的封面、名称、作者、购买数量、价格等重要信息,还要有收货信息的填写块,用户需要以正确的格式填写收货信息才能下单。支付功能:支付页是用户下单成功后系统给予跳转的页面。该页面拥有用户所下的订单总金额的显示、支付二维码的展示以及确认支付按钮等功能,用户支付成功后,系统给予支付成功提示,并将页面跳转返回至首页模块。用户订单:用户订单功能展示需要在用户登录后才能对用户进行展示,用户订单是需要在用户下单成功后才能存在的。用户订单里展示的有订单号、书名、收货人、联系电话、收货地址、订单总价等信息。还有用户可操作的确认收货等功能。个人中心:用户在登录后,可以点击个人中心,进行账户信息的维护与修改,也可以在个人中心中退出账号登陆状态。如果在没有用户登录状态下,点击个人中心系统将跳转到登录页面。具体的客户端系统结构如图4-2客户端架构图所示。图4-2客户端架构图4.2.2管理端设计系统该端主要功能:书籍的分类管理、书籍信息管理、订单管理、用户管理以及评论管理功能。(1)书籍的分类管理:管理员可以对图书的分类进行添加,删除,修改等功能,大类添加要上传图书分类的图片和分类名称。(2)书籍信息管理:管理员可以通过筛选分类名这个选项,来查看所选分类下的所有图书,然后可以进行图书的增加、删除、修改。图书的内容展示将展示图书所在的分类id,图书的封面,图书的名称,作者,图书的库存数量,图书的价格等关键信息内容。(3)订单管理:管理员根据订单显示的信息、可以对货物进行发货和订单的删除管理。所以在这个功能模块中显示给管理员的信息会有一个订单号,图书封面,书名,作者,购买数量,收件人信息等等以及对应的发货、取消订单、删除订单操作功能选项。(4)用户管理:用户管理面对管理者展示出来的信息块有用户名和密码等,因为密码涉及到用户的隐私,所以不予显示,所以该模块的主要功能有修改用户名、用户密码以及注销用户。(5)评论管理:对管理员所展示的评论管理功能是在所有书籍管理功能中的,管理员可以通过找到需要管理的商品,点击管理评论按钮,进行该商品下的所有的评论的删除的管理。管理端结构如图3-3所示。图4-3管理端架构图4.3数据库设计数据库是被作为系统持久化最常用的存储机制,是系统操作最频繁也最容易出错的地方,一个好的数据库设计不仅有利于系统的维护、数据迁移更有利于系统的可扩展性。在确定需求的情况下,需将抽象的模型转为实际的实体关系映射,为保障数据库顺利的设计完成,在设计数据库之前需进行数据模型设计即E-R图设计出来,E-R图更加直观的表现出各实体间的关系可以,让开发者更加了解需求[]。系统数据结构模块的设计归类后可分为:用户模块、图书分类模块、购物车(预订单)模块、订单模块、图书产品模块,用户评论模块。系统E-R图如图4-4所示:图4-4系统E-R图根据系统E-R图,设计系统数据结构各个模块具体表数据结构如下:1、用户表(用户ID,用户名称,用户密码,salt加密序列码)外键:无。用户表结构设计如表4-4所示:表4-4user表字段名字段类型是否允许为空备注idint否自增长主键nameVarchar(100)否用户名passwordvarchar(60)否用户密码saltvarchar(100)否Salt加密序列码2、图书分类表(图书分类ID,分类名称,分类图片链接)外键:无。图书分类表结构设计如表4-5所示:表4-5category表字段名字段类型是否允许为空备注idint否自增长主键nameVarchar(60)否分类名Imagevarchar(60)否分类图片链接3、购物车(预订单)表(预订单ID,产品id,订单id,用户id,购买数量),外键:产品id、订单id、用户id。购物车(预订单)表结构设计如表4-6所示:表4-6orderitem表字段名字段类型是否允许为空备注idint否自增长主键pidint否产品id(外键)oidint否订单id(外键)uidint否用户id(外键)numberint否购买数量4、订单表(订单ID,订单状态,订单号,收件人,收件人联系电话,收件地址,创建时间,付款时间,发货时间,收货时间,用户id)。外键:用户id。订单表结构设计如表4-7所示:表4-7order表字段名字段类型是否允许为空备注Idint否自增长主键orderNumbervarchar(120)否订单号addressvarchar(120)否收货地址recipientvarchar(120)否收货人telvarchar(120)否收货电话号码createTimedatetime否创建时间payTimedatetime是支付时间deliverTimedatetime是发货时间dealTimedatetime是收货时间statusvarchar否订单状态uidint否用户id整条订单信息通过用户id(uid)关联用户,从而找到订单所属的源头。5、图书产品表(产品ID,图书名,图片链接,价格,作者,出版社,折扣,库存,所属分类ID,商品介绍)。外键:所属分类ID。图书产品表结构设计如表4-8所示:表4-8product表字段名字段类型是否允许为空备注idint否自增长主键namevarchar(120)否图书名imagevarchar(120)否图片链接pricefloat否价格authorvarchar(120)否作者publisherVarchar(120)否出版社discountfloat否折扣stockInt否库存cidint否所属分类idintroducelongtext否商品介绍图书产品表中存储的是所售图书的基本信息,表中设有外键分类ID,由此可以找到图书所属的分类。6、用户评论表(评论ID,评论内容,用户ID,产品ID,创建时间)。外键:用户ID,产品ID。用户评论表结构设计如表4-9所示:表4-9review表字段名字段类型是否允许为空备注idint否自增长主键contentvarchar否评论内容uidint否用户IDpidint否产品IDcreateTimedatetime否创建时间用户评论表中有用户ID,产品ID两个外键,由此评论可以关联到创建评论的用户和所对应的产品信息。4.4本章小结本章设计了在线图书销售平台系统的整体架构,画出了系统数据结构的E-R图,以此制作了数据库表。在系统整体架构中,设计了客户端与管理端两个子系统结构。描述了设计的系统客户端如首页展示、购物车、购买书籍等功能,系统管理端中的图书分类的管理、图书详细管理,订单的管理,用户的管理等。并作出结构图解释。5系统实现5.1整体流程实现登录到网上图书销售平台时候,使用者可以作为一个在未登录状态下的游客。浏览图书销售平台里的图书各分类大块,点击图书分类大块的名称就可以进入到图书大类中,随即页面中展示出的都是该图书分类下的所有书籍。游客也可以通过首页顶部的搜索栏输入书的名称通过系统的检索找到需要的书籍,系统的搜索是支持模糊搜索的。当游客需要购买书籍时,点击购买书籍,系统自动引导用户到登录界面,若没有账户,游客通过单击注册按钮,系统自动引导用户到注册界面,用户输入账户名和两遍密码系统检索合格便注册成功,系统将引导到登录页面,登录成功后便跳转至原来书籍详细界面,用户选择数量后便可以点击购买或加入购物车,若是加入购物车,所挑选的书籍便存在购物车,此时用户点击购物车,便可以对购物车的书籍进行管理,用户需选择购物车中一些书籍才能进行下单,选择完书籍后点击去购买按钮跳转至下单界面,下单界面用户填写收件人,联系电话,收件地址等信息,正确填写完毕后,点击立刻下单,跳转至支付页面进行扫码支付,支付和未支付成功的订单都会在我的订单模块中展示。若在书籍详情页直接点击购买,系统便直接跳转至下单界面。支付成功与未支付成功的订单,用户都可以在“我的订单”中查看,点击购买但是没有下单成功的商品会默认加入到购物车。管理端登录后管理员可以对书籍的分类、所有书籍的详细、所有订单、所有用户进行管理。具体如图4-1所示。图5-1系统整体流程图5.2首页模块系统首页模块中展示的内容有书籍搜索框、系统平台的公告轮播图、商品图书的分类板块。首页最顶端为商品图书名搜索框,搜索框以下为图书销售平台商品信息公告图片的轮播,公告轮播图以下展示所有图书分类的板块内容。如图5-2所示。图5-2首页模块5.2.1书籍搜索用户或游客可以通过在搜索框内输入图书名称,从而搜索到名称中包含有框中输入的关键字的图书,届时,系统会将搜素到的所有符合条件的书籍进行展示,如图5-3所示(输入关键字“的”后系统展示的结果)。图5-3搜索关键字“的”系统结果5.2.2公告轮播图轮播图展示当前图书销售平台的广告海报图,每间隔3秒后会自动播放下一张广告海报,如果用户将鼠标悬停在广告海报图上,海报便暂停切换,鼠标移开,切换继续。轮播图左右端有箭头按钮,使用者可以点击进行自定义切换。如图5-4所示。图5-4首页中的广告轮播图5.2.3图书分类首页的图书分类区每个板块展示该分类5本标志性的商品书,用户或游客可以直接点击展示的商品书进入查看书的详情内容进而购买商品书,也可点击分类标题名进入图书分类模块,查看该分类所属的所有商品书。如图5-5所示。图5-5点击首页“张蔚杰选集”分类名称展示的结果5.3登录/注册功能模块描述:使用者登录到本图书销售平台时,需要登录才能进行图书的购买、将图书加入购物车、我的订单查看、个人中心功能的使用等,否则只能以游客的身份对该图书销售平台书籍分类,书籍商品信息等进行浏览,具体如图5-6所示。。若没有账号的游客,则可以点击登录下方去注册提示进行账户注册,注册界面需输入一次游客自定义的用户名和两次一致的密码,校验通过才能进行注册。具体如图5-7所示。图5-6用户登录页图图5-7游客注册页图用户在登录时,根据提示在相应的输入框内输入账户和密码,数据在前端先进行校验,如果数据输入的格式正确通过,那么axios将用户输入的数据传到后端的登录接口,后端接口将通过调用业务层,业务层调用持久层查找用户输入数据所对应的账户密码,如过存在,则返回前端用户登录成功,若不存在,账户不存在则返回提示账户未注册,密码不存在则返回提示密码错误。若游客没有账户点击登录页下方的去注册提示,系统将自动引导至账户注册页,用户录入一次自定义的用户名和两次相同的自定义的密码(第二次输入密码为密码确认)后,点击注册按钮,前端校验若有格式错误便弹出错误提示,若没有格式错误,前端使用axios向后端对应的注册接口发起请求,后端接受到数据,步骤与登录接口类似,控制类将使用用户输入的用户名调用持久层查找数据库有无存在相同的用户名,若存在,返回提示用户名已存在,若不存在,则返回提示注册成功。5.4图书详情页模块图书详情页是通过用户点击展示的商品书籍的封面后,系统进行跳转的,书籍详情页展示的信息有图书的封面、书名、作者、图书的价格、折扣、出版社、图书库存量、图书内容介绍、评论。可操作的功能按钮有购买数量加减的按钮、购买按钮、加入购物车按钮。其中评论信息设计为可折叠隐藏的。具体如图5-8所示。图5-8图书详情页图5.5购物车模块购物车模块是用户角色登录后才有权限使用的功能模块。在购物车模块中给用户展示的信息有商品书籍的封面、书名、作者、单价、数量、小计、操作列。其中可操作功能列有数量列和操作列,操作列的功能为删除购物车中的商品。数量展示的一列,用户可以对加入购物车的商品书籍购买量进行增加和减少操作,这里有个限定,用户对书籍购买量的上限不能超出商品的库存数量,减少的最少购买量不低于1本。若用户想删除购物车的商品书籍,可以在购物车的操作功能列点击删除图标,将购物车中不需要购买的商品书籍删除。购物车中的小计信息展示列的商品金额为当前行的商品购买数量乘以商品单价计算出的单件商品的总价,该总价将会随着用户对购买数量的操作改变而实时计算出价格。购物车中每行的第一列是勾选框,用户将对购物车中想要购买的商品进行选择性的勾选,勾选完后购物车底部将给出用户所勾选上商品的总价格,点击购买按钮,系统就跳转到了下单页面。如图5-9所示。图5-9购物车图5.6订单模块5.6.1下单功能页选中购物车商品点击“去购买”或在图书详情页直接点击购买按钮,系统就会跳转到商品下单页面,下单页面中上半部分展示每件商品的封面、书名、作者名、单机乘数量信息、小计价格。下半部的左边板块为用户收货信息的填写,需要用户在相应的输入宽中填写收货信息,这里设计每个输入框都为必填,联系方式填写框设计为只能输入数字,并且不超过11位。下半部的右边板块展示预订单配送方式、运费、总价等信息内容,右下角是立刻下单按钮,点击按钮时,系统会再次检索用户填写的收货信息,确认无误后才能生成订单,下单功能页面如图5-10所示。图5-10下单功能页面5.6.2订单支付成功生成订单后,系统便跳转到了订单支付页面,订单支付页顶端提示订单支付用支付宝软件扫码支付,接着下面显示订单的总价格,以及付款二维码,这里二维码使用支付宝爱心捐赠的二维码展示。支付完成,最后一个操作步骤需要用户点击确认支付,系统页面跳转首页,到此用户订单支付成功。5.6.3我的订单用户下单成功后,可以在导航栏“我的订单”中查看当前订单状态和其他订单信息。如果用户未登录,系统将自动引导用户至登录页,用户登录成功后便拥有查看自己订单内容的权力。我的订单功能页面中展示有订单进度、订单号、图书封面、书名与作者、数量与小计、总金额、收件人信息、状态等信息。还有单独在最后一列的操作列。订单进度显示当前订单的下单时间,支付时间,发货时间和收货时间。用户下单成功后由后台随机生成的一串数字序列号插到预订单中便生成了订单号。收件人信息通过点击查看便能弹框展示信息,如图5-12所示。状态字段有6种展示结果:待支付,待发货,待收货,待评价,已完成,已删除。并且随着不同的状态下用户可以在操作列做不同操作,具体逻辑如图5-13所示。在收货后用户可以对订单的商品进行评论,如图5-14所示。图5-12查看收件人信息图5-13状态逻辑活动图图5-14订单评论5.7个人中心模块个人中心模块功能只有用户登录时才能使用,个人中心拥有账户名修改和密码修改功、用户退出功能,如图5-15所示。图5-15个人中心模块功能项5.7.1账户名修改在用户登录状态下使用账户名修改功能,界面将会弹出用户名修改的对话框,在对话框中的输入框上方提示输入新的账户名。用户名规定不能空白和输入空格内容,设计用四则运算对输入数据进行检索,如图5-16所示。图5-16用户名修改5.7.2密码修改在用户登录状态下使用密码修改功能,界面将会弹出密码修改的对话框,在对话框中的输入框上方提示输入新的密码。密码规定不能空白和输入空格内容,设计用四则运算对输入数据进行检索,如图5-17所示。图5-17用户名修改5.7.3用户退出用户若想退出本图书销售平台的账户,可以在系统导航栏的个人中心里找到“退出”功能选项,点击后,用户就可以安全的退出账户了。5.8图书分类管理模块图书分类管理的分类与客户端首页中的分类模块展示息息相关,管理端的图书分类数量的多少决定了客户端首页图书分类模块的多少。分类管理页面展示了分类的id,分类的名称和分类的封面图片。管理员可以对图书分类进行新增、编辑和删除操作。5.8.1新增分类点击新增分类功能按钮时,系统将弹出新增分类对话框,管理员可点击对话框中分类图片的上传按钮,进行分类图片的上传,再在分类名称输入框中输入新增的分类名称,上述两个填写项都有必填检索。如图5-18所示。图5-18新增分类功能5.8.2编辑分类点击编辑分类功能按钮,系统前端通过编辑分类的id调用后台接口找到分类的数据,展示在编辑分类对话框上,管理员就能够通过在展示的数据上进行修改。如图5-19所示。图5-19编辑分类功能5.8.3删除分类管理员点击每个分类后的删除按钮,前端将向后端接口发送要删除的分类id,后端接口通过前端传来的id,调用业务层的方法,业务层通过使用持久层的JPA框架对分类进行库中数据的永久删除。5.9图书详细管理模块5.9.1分类图书查询在图书详细管理模块中用户可以在左上角的分类选择框中选择分类,就可以查看该分类下的所有图书,展示信息有图书所属分类、名称、封面、作者、价格、折扣信息、出版社、库存、内容介绍、评论。如图5-20所示。图5-20分类图书查询功能5.9.2新增图书添加图书时,若管理员先选择了分类的查询,再点击添加按钮时,添加选项中分类一项中默认选中的是管理员查询时选择的分类,也可以修改。若没有做分类查询则分类选项为空白。新增图书需要填写的选项有:商品图书封面、商品名称、作者、价格、折扣、出版社、库存、分类、内容介绍。以上都为必填选项,价格,折扣,库存项设置只能输入数字,封面只能上传图片。如图5-21所示。图5-21新增图书功能5.9.3编辑图书点击编辑分类功能按钮,系统前端通过编辑分类的id调用后台接口找到分类的数据,展示在编辑分类对话框上,管理员就能够通过在展示的数据上进行修改。如图5-22所示。图5-22编辑图书详情功能5.9.4删除图书管理员点击每个分类后的删除按钮,前端将向后端接口发送要删除的分类id,后端接口通过前端传来的id,调用业务层的方法,业务层调用持久层的方法使用JPA框架对分类进行数据库数据的删除。5.10所有订单管理模块5.10.1订单信息展示管理端订单信息的展示有订单进度、订单号、图书封面、书名与作者、数量与小计、总金额、收件人信息、状态。其中进度信息字段管理员可以点击箭头展示订单的创建时间,支付时间,发货时间,收货时间信息。收件人信息一项用户可以点击查看几个字查看收件人的信息,收件人信息展示的有三项:收件人、收件地址、联系电话。状态信息字段有待支付,代发货,待收货,待评价,已完成,已删除几个状态展示,其中已完成状态展示的颜色为绿色,其余的展示颜色都是红色。管理员可以根据订单信息进行订单发货。如图5-23所示。图5-23订单信息展示5.10.2订单操作管理员可以对所有订单进行操作,拥有操作的功能权限有发货权限和取消订单权限(如果用户需要购买的商品没货那管理员可以通知用户后进行订单的取消操作)。若已取消或删除的订单则可以进行彻底删除操作。如图5-24所示。图5-24管理员订单操作5.11用户管理模块5.11.1信息展示用户管理模块页面展示给管理员的信息有用户id、用户名、和各个操作功能按钮,其中由于保护用户的隐私所以系统设计不向管理员展示用户的密码信息。如图5-25所示。图5-25管理端用户信息展示5.11.2修改用户名管理员通过操作修改用户按钮便能够对相应用户的用户名进行修改,系统会弹出修改用户名的对话框,管理可以在对话框的输入框中输入新的用户名,对话框用正则表达式验证设定不能空白或输入空格信息,数据从前端传入后台还要判断是否已存在相同的用户名,若存在则不能修改,若无则修改成功。如图5-26所示。图5-26管理员修改用户名5.11.3修改密码管理员通过操作修改用户按钮便能够对相应用户的密码进行修改,系统会弹出修改密码的对话框,管理可以在对话框的输入框中输入新的密码,对话框用正则表达式验证设定不能空白或输入空格信息,数据从前端传入后台先进行salt盐加密再将其存入数据库作密码修改。如图5-27所示。图5-27管理员修改用户密码5.11.4注销用户管理员可以点击注销按钮,直接对相应的用户账户进行注销,前端将要注销用户的id传入后台,后台获得id后将对id相应的用户的订单、预订单、评论和用户进行删除。5.12本章小结本章介绍了图书销售平台的客户端系统和管理端系统的实现效果。客户端的各个模块的功能,如购物车模块,用户如果没下单成功的书籍,系统会在购物车中增加其相应数量的同样书籍,用户可以对购物车书籍进行操作等。服务端的图书详细管理模块可按分类进行查看和图书添加等等功能。还对一些模块功能画出相应的流程图进行解释。6系统测试6.1客户端测试6.1.1登录/注册功能测试在用户登录时分别用不同情况登录,测试系统的反应结果。具体如表6-1所示。表6-1:登录功能测试测试用例预期效果实际效果是否通过用户名:null密码:null用户名和密码输入框弹出不能为空。用户名和密码输入框弹出不能为空。通过用户名:zwj密码:null密码框提示错误:请输入密码密码框提示错误:请输入密码通过用户名:null密码:123456用户框提示错误:用户名不能为空用户框提示错误:用户名不能为空通过用户名:zwj密码:12345登录成功登录成功通过用户名:zw密码:12345弹出用户未注册提示弹出用户未注册提示通过用户名:zwj密码:123弹出密码错误提示弹出密码错误提示通过6.1.2搜索图书功能测试在搜素框中输入不同的关键字测试结果。如表6-2所示表6-2:搜索图书功能测试测试用例预期效果实际效果是否通过输入“c”搜索到书名含有“c”的书籍搜索到书名含有“c”的书籍通过不输入关键字搜索到所有图书搜索到所有图书通过6.1.3购物车功能测试在商品详情页选择商品购买数量后加入购物车。在购物车中做以下测试。如表6-3所示。表6-3:购物车功能测试测试用例预期效果实际效果是否通过将商品购买量增加商品小计和总价增加商品小计和总价增加通过将商品购买量减少商品小计和总价减少商品小计和总价减少通过单击购物车删除按钮按钮同行的商品被删除按钮同行的商品被删除通过勾选所有要购买商品计算出商品总价计算出商品总价通过未勾选商品点击购买提示“请选择商品再购买”提示“请选择商品再购买”通过勾选商品后点击购买跳转下单页跳转下单页通过6.1.4下单功能测试下单页面可供用户操作的项有:用户收货信息的输入,立即下单按钮功能。具体测试结果如表6-4所示。表6-4:下单功能测试测试用例预期效果实际效果是否通过不填收件人、收件地址、联系电话,点击下单按钮对应的3个输入框弹出不能为空提示。对应的3个输入框弹出不能为空提示。通过在联系电话输入框输入除数字以外字符。不能输入不能输入通过在收件人输入框输入”小明“,收货地址输入”福建省福州市大学城闽江学院“,联系电话输入11位数字,点击下单按钮下单成功,跳转支付页。下单成功,跳转支付页。通过6.1.5“我的订单”模块测试“我的订单”功能测试需要在用户下单成功若干单,并且订单在多种情况下才能进行测试。具体测试结果如表6-5所示。表6-5:“我的订单”功能测试测试用例预期效果实际效果是否通过用户未登录状态下点击菜单栏“我的订单”跳转登录页,并提示“请先登录!”。跳转登录页,并提示“请先登录!”。通过用户登录状态下点击菜单栏“我的订单”展示登录的用户的所有订单。展示登录的用户的所有订单。通过订单下单成功,未支付订单状态为待支付,并显示去支付按钮。订单状态为待支付,并显示去支付按钮。通过订单支付成功后订单状态显示代待发货,并显示取消订单按钮。订单状态显示代待发货,并显示取消订单按钮通过订单发货后订单状态显示待收货,并显示确认收货按钮。订单状态显示待收货,并显示确认收货按钮。通过用户点击确认收货按钮后订单状态显示待评价,并显示评价按钮。订单状态显示待评价,并显示评价按钮。通过用户点击评价按钮弹出订单评价输入框。弹出订单评价输入框。通过用户发表评论后订单状态显示已完成,并显示删除按钮。订单状态显示已完成,并显示删除按钮。通过用户点击删除按钮删除对应的订单删除对应的订单通过6.2服务端测试6.2.1图书分类管理模块测试服务端的所有测试需要在管理员登录后进行,图书分类模块具体测试如表6-6所示。表6-6:图书分类模块测试测试用例预期效果实际效果是否通过点击添加分类按钮,不输入任何数据,点击确认按钮。除分类图片外,其他必填项输入框提示数据不能为空。除分类图片外,其他必填项输入框提示数据不能为空。通过点击添加分类按钮,上传分类图片,填写必填项分类名称,点击确认图书分类添加成功。图书分类添加成功。通过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 茶饮公司介绍课件
- 2026年水文测站试题及答案
- 呼吸道传染病病区感控方案中国专家共识(2026版)
- 药物临床试验质量控制指南(2026版)
- 屈光手术术前评估专家共识(2026版)
- 2026年网络安全知识竞赛题库【附答案】
- 2026-2027学年初中心理健康八年级上册浙教版(边玉芳)第十课 提高效率课时巩固卷
- 2026-2027学年初中心理健康八年级上册北师大版(2021)第八课 融洽师生关系课时诊断卷
- 2026年事业单位工勤技能考试题库(答案)
- 《燕子》三年级语文复习巩固课件
- 2025版 全套200MW800MWh独立储能项目EPC工程概算表
- 厨师服务礼仪规范
- 旅游行业员工服务礼仪培训
- DB11∕T 1796-2020 文物建筑三维信息采集技术规程
- 智慧方案石化信息化建设项目炼化板块及智能解决方案
- 第8课 我为班级作贡献(教学课件)小学二年级上册 统编版《道德与法治》新教材
- 神经阻滞患者健康宣教
- 会务服务培训课件
- 桡骨远端骨折护理课件
- 企业装修项目管理制度
- 水池清洗、消毒、维护管理制度
评论
0/150
提交评论