基于SpringBoot的网上书城

摘要

本论文从现有网上书城的角度出发,提出基于SpringBoot,vue前端开发技术和mysql数据库的网上书城系统的设计与开发方案,对网上书城系统进行了设计及开发,以适应市场对于用户体验提出的多种需求。此系统在一定程度上提高了书店的服务质量和效率,具有较强的实用性和推广价值。

论文内容首先对网上书城系统总体概况和发展现状进行介绍,然后介绍开发技术和开发工具,说明了此系统的需求分析、系统模块的详细分析、UML用例视图、数据库表、系统测试的设计过程。本文以网上书城为研究对象进行了设计与开发,和与技术实现有关的程序,对如何利用SpringBoot与vue进行网上书城系统的开发进行剖析。用户分为普通用户和管理员两类。管理员可对用户信息进行管理(新增,删除,修改)。书籍或商品的增删改操作,所有用户订单管理等功能。普通用户则无此权限。普通用户可以客户登录、客户注册、查看用户个人信息和修改、购物车管理、对图书或商品进行购买、本用户订单管理、借阅书籍等。最后,提出做项目时遇到的难点,对全文给予总结并进行展望。

关键词: 网上书城;SpringBoot;vue;mysql数据库

Abstract

From the perspective of the existing online book store, this paper proposes the design and development scheme of the online book store system based on SpringBoot, vue front-end development technology and mysql database, and designs and develops the online book store system to meet the various needs of the market for user experience. This system has improved the service quality and efficiency of bookstores to a certain extent, and has strong practicality and promotion value.

The content of the paper first introduces the overall overview and development status of the online bookstore system, then introduces the development technology and tools, and explains the design process of the system's requirements analysis, detailed analysis of system modules, UML use case views, database tables, and system testing. This article focuses on the design and development of an online bookstore, as well as the related technical implementation programs. It analyzes how to use SpringBoot and Vue to develop an online bookstore system. Users are divided into two categories: regular users and administrators. Administrators can manage user information (add, delete, modify). Functions such as adding, deleting, and modifying books or products, and managing all user orders. Ordinary users do not have this permission. Ordinary users can log in, register, view and modify their personal information, manage shopping carts, purchase books or products, manage their own orders, and borrow books. Finally, identify the difficulties encountered during the project and provide a summary and outlook for the entire article.

 Keywords: Online bookstore; SpringBoot; vue; mysql database

目录

摘要

Abstract

第1章 绪论

1.1引言

1.2课题的可行性分析

1.2.1市场可行性

1.2.2经济可行性

1.2.3技术可行性

1.3网上书城的实践价值

1.4国内外研究现状

第2章 编程环境基础知识

2.1开发技术

2.2开发工具

2.3 开发主要流程

第3章 需求分析

3.1系统基本功能需求分析

3.2 附加模块

3.3 创新部分

3.4 本章小结

第4章 系统的详细设计和主要代码

4.1 首页设计

4.2 系统功能详细分析

4.3管理员额外的页面管理

4.3.1用户管理

4.3.2所有用户订单管理

4.4 UML用例视图模型分析

4.5数据库分析

4.6 本章小结

第5章 系统测试

5.1测试的目的

5.2测试方法

5.3 测试用例

5.4 测试结论

第6章 做项目期间遇到的问题或难点

第7章 结论

参考文献

第1章 绪论

1.1引言

书籍是学生生活中不可或缺的一部分,学生对于书籍的需求永远不会减少。但随着科技的进步,现在去实体书店的人比以前少了,因为人们可以在家里阅读电子书。然而,阅读电子书始终比不上阅读实体书给人带来的质感。为了解决这个问题,我为某个实体书店设计了一个网上书城管理系统,人们可以在这里浏览、购买或借阅书籍等操作。图书销售的概念很简单;读者可以很容易地在网上找到他们喜欢的书,方便快捷。

网上书城系统是基于网络的书籍购买平台,为买家和卖家提供一系列服务,包括书籍信息查询、下订单、购买或者借阅书籍等。与传统实体书店相比,该网上书城系统有巨大的优势,因为它能够实现信息的数字化和网络化,显著改善了图书供应商的运营范围、营销策略和可访问性。书籍相对于其他大型商品,具有特定的特点,即价格低廉、易于运输,这使得网上书店具有独特的优势并吸引买家[1]。

据最新统计,中国大陆已经注册的网上书店应该有 200多家,有网站的只有 100 多家,但已经投入运营能够买到书的商家并不多,据一家媒体调查,能够顺利快速买到书并受广大网友喜欢的网上书城有大洋网、卓越网、当当网等几家[2]。但随着互联网的发展,电子商务因其全球影响力、巨大的信息容量和独特的优势而广受欢迎。 因此,网上书城的潜力是很巨大的,它的发展将会越来越完善。

网上书店的吸引力在于两个方面。首先,他们提供了种类繁多的书籍供读者选择,通常远远超过实体书店所能提供的。读者可以很容易地按类别或书名搜索他们需要的书籍。

其次,网上书店提供了便利。实体书店受到空间、营业时间的限制,而网上书城总是开门营业。读者可以随时随地搜索或订购书籍,而无需亲自去实体书店。这种额外的便利节省了时间和金钱,尤其是对于那些远离传统书店的读者来说。网上书店提供了更广泛的选择,易于搜索,并减少了购买过程中的费用。考虑到网上图书购物的好处,可以肯定的是,图书行业的电子商务将继续蓬勃发展。当读者在网上书店找到他们需要的书时,他们可以立即发送购买信息并填写订单。收到订单后,网上书店可以在几天内确认并交付所需的书籍。

1.2课题的可行性分析

1.2.1市场可行性
       网上书城的潜在客户范围非常广泛如今是大多数人都能连上互联网的时代,同时其中喜爱阅读书籍也有很多人,而网上的城就可以为他们提供很好的服务随着现在网络的不断发展,越来越多的人倾向于在互联网上购买商品,因此网潜在的市场也非常大的。随着网上书城吸引越来越多的用户,我相信在不久的将来网上书城的功能会越来越完善

国内外有许多成熟的大型网上他们可以试着扩大商家的规模和影响力,降低运营成本并提高工作效率[3]上书城在当前的市场环境下被认为是一个具有很大潜力的商业模式。

1.2.2经济可行性

1)低成本:

和传统的实体书店相比较,网上书店的运营成本相对较低。网上书城不需要支付高昂的实体书店的租金、人工和装修等费用,因此可以提供更低廉的价格,同时也可以获得更高的利润。

(2)实体书店逐渐增多,显出网上书城的优势

实体书店的逐渐增多,并且规模也在随着发展变大。甚至像贝塔斯曼这样的外国图书巨头也进入了这个市场。这些外国公司加入会员制等新的销售理念,促进了图书市场的蓬勃发展。在这种市场环境下,当网络书店加入到这种激烈的竞争中时,其优势才能更好地体现出来。

1.2.3技术可行性

(1)现在网络是由Internet技术构建的,为电子商务的发展提供了一个统一的平台。

(2) 许多IT制造商推出了自己的电子商务产品,并提出了相应的解决方案,如各种卡技术和安全技术等。

(3) 在硬件方面,国内计算机和网络的发展非常快。尽管中国互联网中国网络信息中心相对薄弱,但中国上网的人数巨大。这是中国计算机网络高速发展后的现实,也是电子商务发展、网上书店管理的基础。

1.3网上书城的实践价值

(1)提高图书销售效率:网上书通过互联网技术实现图书在线销售,克服了传统实体书店在地域上的限制。人们在任何时间、任何地点都可以轻松购买到所需的图书,因此提高了图书销售效率。

(2)丰富阅读体验:网上书店提供大量的书籍资源,通过查找和分类,读者可以迅速找到需要的书籍。同时,有的网上书店也提供在线阅读、点评和推荐等功能,为读者提供了更加丰富、便捷的阅读体验。

(3)推动图书行业转型升级:网络书店的诞生为图书行业提供了全新的发展契机,推动图书行业向数字化、网络化和智能化方向转型升级。

(4)加强图书文化传播:网上书店通过互联网技术向更多的读者群体传播图书文化,增强了文化传播力度,促进文化交流和融合。

(5)维护消费者权益:通过网上售书,网上书店在图书销售上实现了透明和公平,避免了传统实体书店中存在的价格不透明和信息不对称等问题,从而维护了消费者权益。

综上所述,网上书店的实践价值非常显著,不仅限于提高销售效率和丰富阅读体验,还能推动图书行业转型升级,加强文化传播,维护消费者权益,对社会和经济发展产生了积极的影响。

1.4国内外研究现状

网上书城指通过互联网技术给予图书发行、阅览、阅读文章等业务的电商平台。近年来随着技术的不断进步和普及,网上书城成为了图书发行的重要渠道之一。以下是网上书城国内外研究动态的简单介绍:

1国内研究现状 

国内专家学者对网上书城的探索主要体现在以下几方面: (1)中国图书馆学会出版发行工作委员会对网上书城的探索:该委员会2010年对我国网上书城的高速发展进行了探讨,阐述了网上书城的发展方向、特征和存在的困难。(2)中国图书馆学会数字出版专家委员会对网上书城的探索:该委员会2014年对我国网上书城的高速发展进行了探讨,阐述了网上书城的发展状况、特征和行业发展趋势。(3)网上书城的发展和现况。学者根据对世界各国网上书城的发展史、状况和发展趋势展开分析,论述了网上书城的运营模式、经营模式、行业竞争等诸多问题。 (4)网上书城的客户行为研究。学者根据对网上书城用户的行为特点、消费行为、满意率等多个方面调研与分析,揭露了网上书城客户的消费观念与行为规律性。 (5)网上书城的营销策略研究。学者根据对网上书城的营销战略、营销活动、品牌文化建设等多个方面剖析,论述了网上书城的营销方式和对策。 (6)网上书城的信息研究。学者根据对网上书城的现代信息技术、电子商务平台建设、网络信息安全等多个方面科学研究,论述了网上书城的科学技术发展与应用。

2 国外研究现状

国外的研究者对网上书城主要关注以下几个方面:(1)美国图书馆协会对网上书城的研究:该协会在2011年对美国网上书城的发展进行了研究,分析了网上书城的发展趋势、特点和面临的问题。(2) 英国图书馆协会的网上书店研究:2013年,该协会在英国进行了一项网上书店研究,分析了网络书城的现状、特点和未来的发展趋势(3)澳大利亚图书馆协会的研究:2015年,该协会对澳大利亚的网络书城进行了一项研究,分析网络图书的现状、特点和未来趋势(4)科学家们对网上书店用户的购买行为、消费心理、满意感等方面进行了研究和分析,揭示出网络图书消费者的规律和心理特征(5)网络书城电子商务模式研究。通过分析电子商务模式、商业战略和网络图书市场竞争,研究人员考察了电子商务模式和网络图书战略。(6) 在线图书城市信息技术学习。研究者随着对信息技术应用、电子商务平台建设的研究,探讨了信息的发展和应用。

总之,网上书城作为一种新型的图书渠道,吸引了国内外众多的关注和研究者。未来,随着互联网技术的不断发展和普及,网上书店的发展前景将更加广阔。

第2章 编程环境基础知识

2.1开发技术

本次系统的开发采用的主要技术:后端SpringBoot框架和用mybatisplus来操作mysql数据库实现。前端:VueJavaScript框架)+elementplus写页面,用到的超文本标记语言HTML5

我将SpringBoot技术用于系统的后端管理模块,书店管理员进行图书管理的操作简单,就算是没学过计算机语言的书店管理员也可以操作和更新整个网站。SpringBoot是一个轻量级的依赖注入和快速开发技术框架,极大地简化了开发和部署过程。我还使用了Vue,这是一个渐进的JavaScript框架,具有双向数据绑定、组件化和模块化等功能,使前端开发更加方便和高效。

后端代码用的是Java语言。Java 语言是面向对象编程语言,其三大特点是封装、继承、多态,对于部分功能,用户封装后可以在全局调用,降低了程序的复杂性,提高了程序员的工作效率。而通过继承,可以让 Java 语言更加灵活,针对个别特殊的类,通过继承重写的方法,可以完美实现特定情况下的公共类的应用[4]

(1)SpringBoot

SpringBoot来自于Spring大家族,因此 Spring所有具备的功能它都有并且更容易使用;同时还简化了基于Spring的应用开发。SpringBoot默认配置了很多框架的使用方式, SpringBoot整合了很多的框架。

SpringBoot 被用于创建微服务,属于“微服务框架”的概念。微服务与分布式系统有点类似,但功能更单一。这为云部署创造了条件[5]

SpringBoot具有快速搭建项目、自动配置、内嵌容器、应用监控等特性,可以帮助开发人员更加高效地开发Web应用程序。

总之,SpringBoot 简化了Spring开发的繁琐流程,给开发者带来了更加轻松和愉快的开发体验,缩短了开发周期,提高了开发效率和质量。

(2)MySQL

MySQL是一种小型关系型数据库管理系统,适用于Internet上的中小型网站和应用程序。同时,无论是在数据库还是网站方面,许多企业也在使用MySQL数据库在线存储数据[6]。使用MySQL搭建高可用的数据库集群系统,能有效地控制企业IT成本[7]。

(3)Mybatis-Plus        

Mybatis-plus是一个方便的操作数据库的代码工具,它是基于Mybatis技术框架开发的。Mybatis本身需要进行多次配置文件的设置和重复操作,容易出错。为了避免这种情况,Mybatis-plus将经常重复的操作封装起来,并提供设置属性生成代码的功能,从而大大减少了工作量。    基于Mybatis-plus动态代码生成的设计和实现,采用求同存异(即有些功能的共通部分)的原则动态生成各层代码,提高了开发效率和正确性[8]

(4) Vue

Vue是一套渐进式JavaScript框架,用于构建用户界面。近年来,其用户数量增长最快,Vue位居AngularReactVue.js前端3大框架之首[9]    vue是一个兴起的前端js库。是一个精简的MVVM。从技术角度讲,Vue.js专注于MVVM模型的ViewModel层,通过双向数据绑定将View层和Model层连接起来,通过对数据的操作就能完成对页面视图的渲染。Vue具有简单、快速、组合、紧凑和强大等独特优势,因此迅速崛起成为一种很受欢迎的前端开发框架。

(5) HTML5

HTML5 HTML 的第五代版本,也是当前最受程序员喜爱的标记语言之一,相对于 HTML4,新一代版本有了质的飞跃,通过HTML5编写的前端页面,更好地对数据进行了呈现,而且,内置的很多函数可以取代简化很多以前需要用 JavaScript 才能实现的功能,如简单的 email 验证,数字输入验证等[10]

[3] 。

(6) elementplus
    Element Plus是一个基于Vue3的UI组件库,是Element UI的升级版。它提供了一系列的高质量、易用的组件,包括表单、表格、弹窗、菜单、按钮等等,可以帮助开发者快速构建出美观、高效的Web应用程序。Element Plus的设计风格简洁、现代,同时也支持自定义主题,可以满足不同项目的需求。

2.2开发工具

项目全程利用Idea写前端Vue文件和后端SpringBoot工程

(1)Idea

IntelliJ IDEA是由JetBrains开发并推出的一款流行的Java集成开发环境,帮助Java开发人员提高开发效率和代码质量。它支持许多流行的编程语言,如Java、Scala、KotlinGroovy等,并提供了许多插件来扩展其功能。

IntelliJ IDEA可以进行代码浏览、代码编辑、代码重构、代码自动完成、代码调试、版本控制、代码检查和代码测试等操作。它提供了一系列方便的特性,例如智能代码提示、代码自动生成、快速查找、文件历史等功能,这些都能帮助开发人员更快地编写高质量的代码。

在调试方面,IntelliJ IDEA非常强大。它支持实时编译、远程调试、多线程调试等功能,使得调试代码变得非常容易和高效。

此外,IntelliJ IDEA还可与一些流行的版本控制系统,如GitSVN等,轻松集成。它还能够与一些持续集成(CI)和持续交付(CD)工具集成。这使得开发人员能够更好地进行团队协作和管理代码的版本和进展。

(2)Navicat 

本次系统设计用的Navicat版本为11.0.8。

Navicat 不仅完美地满足了专业开发人员的所有需求,而且操作简单易学,支持多个类型的数据库管理即便是初学者也能够轻松上手。无论是数据库管理员还是开发人员,在日常工作中都需要使用数据库管理工具, Navicat 提供了一个快速而高效的工具。

使用Navicat用户可以优化日常数据库维护任务,从而减少人为错误的发生,并简化管理流程。Navicat 提供的安全性和简洁性,让用户在日常工作中更加放心和轻松,大大提高了工作效率。

(3)Postman

本次系统设计我用Postman版本10.12.10来测试后端代码。

Postman是一款功能强大的网页调试工具。使用Postman,你可以轻松地发送各种类型的HTTP请求,并添加任意数量的参数和headers能够帮助开发人员更加方便、高效地进行请求调试,减少了由手动操作导致的错误出现,提高了计算机程序开发的效率和正确性。

计算机程序调试是在保证系统正确性的前提下进行的必不可少的步骤,Postman提供了一个可靠的途径来进行测试和修复代码中的问题。一旦计算机程序编写完成,就需要对其进行测试来发现和修复错误。通过Postman,开发人员可有效辅助进行程序测试和修正,从而提高了程序开发和测试的效率。

Postman提供了许多有用的功能,使开发人员更加高效地进行请求调试、Mock服务器和自动化测试等操作。使用Postman可以有效地提高计算机程序开发和测试的效率,帮助开发人员更好地实现程序的正确性保证。

(4)Node.js

Node.js是一个基于Google V8引擎的JavaScript运行环境,可以用来方便且快捷地创建服务器端网络应用程序。    Node.js是一个服务器端的JavaScript解释器,可用于构建响应速度快、易于扩展的Web应用程序[11]    许多应用程序正在使用Node.js,它是一种用于异步I/O、事件驱动的服务器端JavaScript框架[12]     Node.js最大的优点是可以处理并行访问,当一个Web应用程序同时拥有很多访问连接时,就能体现使用Node.js的优势。

(5)开发者工具

本次系统设计我用到开发工具调试前端代码的效果。

网页按F12进入开发者工具,然后可以审查元素,查看源代码。有时候你把鼠标放到下面的一行一行的代码上面在网页上会有显示告诉你这几行代码指的是网页的哪里,有时可以看到网页上视频的地址。开发者工具中主要功能可以帮助开发者调试js和根据页面元素快速定位,根据内容进行程序调优用。

2.3 开发主要流程

                                                  2-1

                                                                                         图2-2

vue create online-book-city  创建一个名为online-book-city的vue 项目

如图2-3。

图2-3

创建成功后 在idea上打开这个online-book-city。

                                            图2-4

然后设置serve运行前端Vue工程。如图2-4。

                                                                                                                                              图2-5

安装element-plus后并引用

npm install element-plus

 --save,如图2-5。

后端:

创建SpringBoot工程。然后在idea上打开,等待依赖的导入。如图2-6和如图2-7。

图2-6                                     图2-7       

配置数据库  如图2-8。

图2-8

图2-9

这样为启动成功,端口为9090。如图2-9。

导入mybatis-plus依赖。mybatis-plus框架会自动把数据库里面字母的下划线的部分转成驼峰形式。如数据库中的nick_name属性名到了后端就会是nickName。如图2-10。

图2-10

前端:

安装axios

如图2-11。

图2-11

前端为8081。后端为9090,跨域了需要解决。在Vue工程加入这个。如图2-12。

图                                              2-12

前端启动成功  如图2-13。

图2-13

开发过程主要如下:

后端工程开始写控制层数据层实体类工具类的文件。用Postman测试接口的效果。如图2-14。

图2-14

前端开始写Vue文件,用elementplus组件编写前端页面。期间按F12进入开发者工具测试前端代码效果。

用Navicat创建和操作MySQL数据库。

第3章 需求分析

3.1系统基本功能需求分析

(1)客户注册:

新用户在登陆之前需要先注册账号,在登录界面点击“立即注册”即可跳到注册页面。如图3-1。

图3-1

运用到了表单校验:用户名、登录密码、确认密码都不能为空,确认密码和登录密码要一致。

前端通过双向绑定获取到用户输入的用户名和密码。注册时的用户名不能是已存在的。这里使用的是 vue里面的request来对后端发送请求,然后后端通过控制层的UserController接收信息。控制层的UserController运用数据层的UserMapper里面继承的mybatis-plus方法selectOne查看用户名是否被已注册,若用户名已被注册则返回“用户名已存在”的错误信息,注册失败。

若用户名不存在,则调用mybatis-plus的insert方法,通过SpringBoot操作数据库增加数据用户名和对应的密码。增加成功返回前端一个操作成功的消息,并且初始化借书积分为5,权限为普通用户(普通用户role属性为2,管理员role属性为1),若因为系统的问题注册失败就返回相应的错误提示。

(2)客户登录

图3-2

只有登录后才能进行网站的操作。如图3-2的登录页面。

运用到了表单校验:用户名、登录密码、验证码都不能为空。前端通过双向绑定获取到用户输入的用户名和密码,然后传到后端,后端通过控制层的UserController接收信息。通过mybatis-plus操作数据库,查看用户名和密码是否对应。若用户名和密码对应正确则登录成功。

若是有时候不想用账号和密码登录时,要是你的用户已经绑定了手机号,就可以通过写手机号,通过手机验证码登录。只要填对了手机号码,那就会模拟手机号后端发来一个验证码,填这个验证码后就可以直接点击“手机验证码登录”,无需写账号名和密码,很方便。

(3)查看本用户信息

每个用户可以把鼠标移到自己的小头像那里,就会出现一个下拉框,点击个人信息,就可以查看本用户的用户名、昵称、余额、邮寄地址等个人信息。如图3-3、图3-4。

图3-3                       图3-4

(4) 退出系统

每个用户可以把鼠标移到自己的小头像那里,就会出现一个下拉框,点击退出系统,就会弹到登录界面,方便登录另外一个账号。如图3-5。

图3-5

(5)  绑定手机号

每个用户都可以通过绑定给自己的手机号加强账号的安全性。只需要登录成功后点击上方的“绑定手机“按钮就可以弹出这个框。如图3-6。

图3-6

(6) 找回密码

若是用户自己忘记了密码,绑定了手机号的用户可以点击“找回密码”那个选项,可以通过给手机号发送验证码,从而重新获取用户的密码。如图3-7。

图3-7

(7) 修改密码

要是用户想修改密码,需要先登录用户,在界面上方点击“修改密码”按钮,弹出这个框之后输入相应的信息,通过模拟手机号发送的验证码,从而修改用户的密码。如图3-8。

图3-8

(8) 查看公告:

管理员特权是可以在公告栏新增想要说明的消息,也可以删除一个消息,修改一个消息。普通用户只能查看“详情”和通过标题“查询”消息。如图3-9。

图3-9

(9) 查看商品

这里的商品是不包括书籍的其他商品,书籍单独在另外一个栏目。可以查看有什么商品可以购买。可以把商品添加到购物车或者直接下订单,可以用商品名称查看某些商品,可以查看商品具体的详情介绍。管理员特权是可以在商品栏增加、删除、修改商品。如图3-10。

图3-10

(10) 所有书籍:

这栏目可以看到网上书城里的所有书籍。管理员特权是可以增加、删除、批量删除、修改所有书籍。如图3-11。

图3-11

(11)  销售的书

可以查看需要购买的书籍。可以把书籍添加到购物车或者直接下订单,可以用书籍名称查看某些书籍,可以查看书籍具体的详情介绍。管理员特权是可以在销售的书栏目增加、删除、修改商品。如图3-12。

图3-12

(12) 可借的书

可以查看可以借的书籍。没被借走的书可以点击借书按钮进行借书,每次借书成功,借书积分减1,每个用户初始借书积分为5。借书成功后会在你借的书里面显示。可以用书籍名称查看某些书籍,可以查看书籍具体的详情介绍。管理员特权是可以在可借的书栏目增加、删除、修改书籍。如图3-13。

图3-13

(13) 查看本用户已借的书

每次借书成功,借书积分减1。借书成功后会在“你借的书”里面显示。可以取消借书,但是借书积分不返还。如图3-14。

图3-14

(14) 个人订单管理:

可以查看已经下订单的商品。可以用商品名称查看某些桑品,可以查看书籍或商品具体的详情介绍。可以取消订单。可以支付订单。 右边栏目会有红色的字提示未支付的订单的数量,提醒用户尽快支付订单。已支付的订单不能重复支付。如图3-15。

图3-15

(15) 购物车管理:

每个用户都可以点击“购物车”栏目,查看自己已加入购物车的商品,可以去“商品”栏目或者“销售的书”栏目选择商品添加到购物车中。如图3-16。

图3-16

3.2 附加模块

(1)余额

为了模拟商品的购买。设置了一个余额模块。就是当用户下了订单之后,在我的订单里面进行支付时,要自己本身的余额高于或等于商品的价格,才能支付成功,不然就会显示余额不足支付失败。支付成功后更新余额数,并且让自己的借书积分加2。

(2)借书积分

每个用户初始都会有5借书积分。每次借书成功,借书积分就会减1,结束后取消借书,积分不返还。每次支付订单成功后借书积分加1。

(3)登录的验证码

每次登录时填写完账号和密码后,还要填一个验证码才能登录,验证码就是在密码下面生成的一个图片里面的四个数字加字母的组合。必须填对才能登录,不然就会显示验证码错误。

(4)模拟手机验证码

就是有时候不想用账号和密码登录时,要是你的用户已经绑定了手机号,就可以通过写在记得手机号,通过手机验证码登录。主要是绑定手机号后,数据库里面的User表的里面对应的用户就会多出一个telephonenumber的属性。只要登录填对了手机号码,那就会模拟手机号后端发来一个验证码,填这个验证码后就可以直接登录,无需写账号名和密码,很方便。

3.3 创新部分

(1)每次在登录界面登录成功后,都会把用户信息存到sessionStorage缓存上名为user。以至于后续要获取此用户的信息或者此用户的权限可以通过获取sessionStorage缓存上的user。

(2)为了防止有人不进行登录,直接通过输入具体网址访问页面。设置了一个request拦截器。可以在request请求发送前对请求做一些处理,这里的拦截器就是判断了一下sessionStorage上的缓存user是否为空,若为空则无论访问什么页面都会跳到登录界面。若sessionStorage上的缓存user不为空则正常访问页面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于Java Spring Boot网上书城参考文献的主要内容包括以下几个方面: 1. Java Spring Boot网上书城通常使用Java Spring Boot作为后端框架,该框架基于Java语言,提供了快速开发应用程序的环境。参考文献可以包括Spring Boot的官方文档、教程、书籍等,了解其使用方法、原理和最佳实践。 2. 网上书城设计模式:参考文献可以包括关于设计模式在网上书城开发中的应用的文章、书籍等。设计模式是一套被广泛认可的解决常见软件设计问题的方法,例如单例模式、工厂模式、观察者模式等,对于构建可扩展、易维护的网上书城应用至关重要。 3. 数据库:网上书城通常需要使用数据库存储书籍信息、用户信息等。参考文献可以包括关于MySQL、Oracle、MongoDB等数据库的使用方法、数据建模的最佳实践等,以及Spring Data JPA等框架的文档和教程,了解数据库的操作和集成。 4. 前端技术:参考文献可以包括关于前端开发技术的文章、书籍等,如HTML、CSS、JavaScript、Vue.js等。网上书城通常需要实现用户界面、搜索功能、购物车、支付等功能,了解前端开发技术对于构建用户友好的网上书城应用至关重要。 5. 安全与效率优化:参考文献可以包括关于安全性和性能优化的文章、书籍等。网上书城要保护用户数据的安全性,防止黑客攻击,同时还要考虑用户的访问速度和响应时间。了解安全性的最佳实践、网络优化、缓存策略等方面的知识,有助于构建高效且安全的网上书城应用。 总之,基于Java Spring Boot网上书城参考文献主要涉及Spring Boot、设计模式、数据库、前端技术、安全性和效率优化等方面的内容,通过学习这些参考文献,可以更好地理解和应用于网上书城开发中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值