版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
湖南商务职业技术学院毕业设计
目录
1引言1
1.1项目开发背景1
1.2开发技术简介1
1.2.1vue简介1
1.2.2Springboot简介2
1.3开发工具简介2
2需求分析2
2.1功能需求描述2
2.2非功能需求描述3
2.3需求用例建模3
2.3.1登录模块的用例3
2.3.2我的相册模块的用例5
2.3.3评论模块的用例7
2.3.4共享相册模块的用例9
3系统概要设计10
3.1系统设计原则10
3.2系统功能设计10
3.2.1登录模块功能设计11
3.2.2我的相册模块功能设计13
3.2.3评论模块功能设计14
3.2.4共享相册功能设计16
3.3数据库设计18
3.3.1设计原则19
3.3.2概念设计19
3.3.3逻辑设计20
3.3.4数据字典20
II
湖南商务职业技术学院毕业设计
4系统详细设计22
4.1用户登录管理子模块设计22
4.1.1用户登录子模块详细设计22
4.2我的相册管理子模块设计23
4.2.1文档相册管理子模块详细设计23
4.3评论管理子模块设计24
4.3.1评论管理子模块详细设计24
4.4共享相册管理子模块设计25
4.4.1共享相册管理子模块详细设计25
5系统实现27
5.1登录子模块实现27
5.1.1登录模块界面设计27
5.1.2登录模块核心代码实现:27
5.2我的相册子模块实现31
5.2.1我的相册模块界面设计31
5.2.2我的相册模块核心代码实现31
5.3评论子模块实现34
5.3.1评理模块界面设计34
5.3.2评论模块核心代码实现35
5.4共享相册子模块实现38
5.4.1共享相册子模块界面设计38
5.4.2共享相册子模块代码实现38
6系统测试41
6.1登录功能测试41
6.2我的相册管理功能测试42
6.3评论管理功能测试42
6.4共享相册功能测试43
7设计小结44
III
湖南商务职业技术学院毕业设计
清风电子相册的设计与实现
1引言
如今信息化的社会,让商品经济化产生了高效益,使得计算机的应用已经
普及到了社会生活的各个角落。计算机与人类的关系愈来愈密切,使得计算机
的应用也深入到人们日常的生活当中。使用电脑的人们现在都已经习惯将自己
的照片或是喜欢的图片以电子格式保存于电脑中,电子相册为人们管理自己的
电子相片带来了极大的方便。
1.1项目开发背景
如今随着电脑的使用越来越广泛,大量的电子图片给拥有较多的电子相片
和喜欢收集电子图片的用户带来了诸多不便,他们缺少了一种完善的图片管理
软件,为了对电子图片的管理方便,因此开发了名为清风电子相册的系统。该
电子相册目前已有完善的管理与使用功能。开发电子相册是为了满足电脑用户
对个人电子图片进行管理的方便,以现代化创新思维的模式去工作。
1.2开发技术简介
该基于ssm的清风相册管理系统前端使用的框架是Vue,后端使用的是
SpringBoot。
1.2.1vue简介
Vue.js是一套构建用户界面的渐进式框架。和其他的重量级框架有所不同,
不同点在于Vue采用的是自底向上增量开发的设计。Vue中的核心库现在只需要
关注视图层就行了,而且vue框架非常的容易学习,非常容易和其它库或已有
项目整合。另一方面,Vue有着完全有能力驱动采用单文件组件和Vue生态系统
支持的库开发的复杂单页应用。
如今Vue.js的目标已经是通过尽可能简单的API实现响应的数据绑定和组
合的视图组件。
Vue.js的本身并不是一个全能框架:它如今只聚焦在视图层。所以它现在
非常的容易学习,非常容易的和其它库或已有项目整合。另一方面,在与相关
工具和支持库一起使用时,Vue.js也能驱动复杂的单页应用。
1
湖南商务职业技术学院毕业设计
1.2.2Springboot简介
(1)创建独立的Springapplications。
(2)能够使用内嵌的Tomcat,JettyorUndertow,不需要部署war。
(3)提供定制化的starterpoms来简化maven配置(gradle相同)。
(4)追求极致的自动配置Spring。
(5)提供一些生产环境的特性,比如特征指标,健康检查和外部配置。
(6)零代码生成和零XML配置。
1.3开发工具简介
工具的使用:采用idea+tomcat+mysql。
idea集成的插件足够多,基本可以实现毕业设计开发方面的所有开发功能
tomcat作为小型服务期有着很多的优点,安装和部署都方便,第三是
TOMCAT适合做一些中小型的项目。
mysql其优点非正常多,比如:高度非过程化,综合统一,易学易用,以一
种语法结构提供了很多种的使用方法,语言简洁,面向集合的操作方式。
该程序采用了mvc的设计模式:
(1)视图(View):负责界面的显示,以及与用户的交互功能,例如表单、
网页等。
(2)控制器(Controller):可以理解为一个分发器,用来决定对于视图
发来的请求,需要用哪一个模型来处理,以及处理完以后需要跳回到哪一个视
图。即用来连接视图和模型。
实际开发中,通常用控制器对客户端的请求数据进行封装(如将form表单
发来的若干个表单字段值,封装到一个实体对象中),然后调用某一个模型来处
理此请求,最后再转发请求(或重定向)到视图(或另一个控制器)。
(3)模型(Model):模型持有所有的数据、状态和程序逻辑。模型接受
视图数据的请求,并返回最终的处理结果。
2需求分析
2.1功能需求描述
(1)功能1用户管理:管理员可以对用户进行添加,修改,删除操作
(2)功能2相册管理:用户可以自行添加相册,可以对相册添加照片,删
2
湖南商务职业技术学院毕业设计
除照片,可以将相册发布出去,通过管理员的审核,别人就可以看见你的相册了
(3)功能3评论管理:用户可以对别人的相册的照片进行评价,通过管理
员的审核,就可以展现出来了。
2.2非功能需求描述
(1)高效性:页面展示要快,响应时间要短。
(2)安全性:用户相册的私密性,用户密码的私密性。
(3)可扩展性:功能可扩展。
2.3需求用例建模
通过对功能需求的分析,创建以下总体用例模型,如图2-1所示。
图2-1清风电子相册系统的总体用例模型
与用户进行了沟通,发现存放相片的方式不够简便,与用户提出清风电子
相册系统的设计构想,了解到了自己设计的清风电子相册系统存在的系统问题,
希望通过系统改进满足用户的需求。
2.3.1登录模块的用例
面向对象的需求分析阶段通过用例图和活动图进行了梳理分析。登录模块
3
湖南商务职业技术学院毕业设计
具体的用例描述如图2-2所示,分别具有登录、注册等操作功能。采用这样的
架构,让用户界面层甚至可以不知道数据库的结构,当要对数据进行维护的时
候,它只要维护与业务层之间的接口即可。
图2-2登录用例图
通过对图2-2用例图进一步的细化分析,得到每个用例的描述表。登录模
块用例描述如表2-1所示,可以进行登录等操作。
表2-1登录模块用例描述
项目描述
用例名称用户登录
用例标识号01
参与者管理员、普通用户
参与者输入用户名、密码,系统进行验证后合法者登录
简要说明
系统,否则提供拒绝登录系统。
前置条件参与者已经打开系统的登录页面login.vue
1.参与者在用户名输入框里输入用户名
2.在密码框里输入密码
基本事件流3.用户按登录后,系统验证参与者输入的有效性。
4.有效则进入系统的主界面。无效则提示相应错误给用户。
5.用例终止
在按“登录”按钮之前,参与者可以随按“取消”或“关
其他事件流
闭”按钮。
异常事件流提示错误信息,参与人确认
4
湖南商务职业技术学院毕业设计
后置条件进入的主界面main.jsp,装载相应的数据
注册模块用例描述如表2-2所示,可以进行注册等操作。
表2-2用户注册模块用例描述
项目描述
用例名称用户注册
用例标识号02
参与者普通用户
简要说明参与者可以进行账号注册使用改网站。
前置条件参与者已经打开系统的登录页面login.vue
1.参与者点击注册在用户名输入框里输入用户名
2.在密码框里输入密码
基本事件流3.用户按登录后,系统验证参与者输入的有效性。
4.有效则进入系统的主界面。无效则提示相应错误给用户。
5.用例终止
在按“登录”按钮之前,参与者可以随按“取消”或“关
其他事件流
闭”按钮。
异常事件流提示错误信息,参与人确认
后置条件进入的主界面main.jsp,装载相应的数据
2.3.2我的相册模块的用例
面向对象的需求分析阶段通过用例图和活动图进行了梳理分析。我的相册
功能模块具体的用例描述如图2-3所示,分别具有管理相册、管理相片等操作
功能。采用这样的架构,让用户界面层甚至可以不知道数据库的结构,当要对
数据进行维护的时候,它只要维护与业务层之间的接口即可。
5
湖南商务职业技术学院毕业设计
图2-3我的相册用例图
通过对图2-3用例图进一步的细化分析,得到每个用例的描述表。登录模
块用例描述如表2-3所示,可以进行登录等操作。
表2-3我的相册模块用例描述
项目描述
用例名称我的相册
用例标识号03
参与者普通用户
简要说明参与者可以将自己喜欢的图片存放到自己创建的相册中。
前置条件参与者登录了用户的账号
1.参与者点击我的相册
2.选择相册
基本事件流3.点击上传相片
4.上传成功提示。无效则提示相应错误给用户。
5.用例终止
其他事件流无
异常事件流提示错误信息,参与人确认
后置条件进入相册,装载相应的数据
注册模块用例描述如表2-4所示,可以进行注册等操作。
6
湖南商务职业技术学院毕业设计
表2-4相册模块用例描述
项目描述
用例名称相册
用例标识号04
参与者普通用户
简要说明参与者可以管理自己的相册。
前置条件参与者已经登录了用户账号
1.参与者点击我的相册
2.添加相册
基本事件流3.输入相册名
4.有效则添加成功。无效则提示相应错误给用户。
5.用例终止
在按“添加”按钮之前,参与者可以随按“取消”或“关
其他事件流
闭”按钮。
异常事件流提示错误信息,参与人确认
后置条件进入的相册页面,装载相应的数据
2.3.3评论模块的用例
面向对象的需求分析阶段通过用例图和活动图进行了梳理分析。评论功能
模块具体的用例描述如图2-4所示,分别具有评论、审核等操作功能。采用这
样的架构,让用户界面层甚至可以不知道数据库的结构,当要对数据进行维护
的时候,它只要维护与业务层之间的接口即可。
图2-4评论用例图
通过对图2-4用例图进一步的细化分析,得到每个用例的描述表。评论模
块用例描述如表2-4所示,可以进行登录等操作。
表2-4评论模块用例描述
项目描述
7
湖南商务职业技术学院毕业设计
用例名称评论
用例标识号05
参与者普通用户
简要说明参与者可以对别人分享的相册进行评论。
前置条件参与者登录了用户的账号
1.参与者点击相册
2.输入评论
基本事件流3.点击评论
4.评论成功提示。无效则提示相应错误给用户。
5.用例终止
其他事件流可以点击取消评论
异常事件流提示错误信息,参与人确认
后置条件进入相册,装载相应的数据
评论审核模块用例描述如表2-5所示,可以进行注册等操作。
表2-5评论审核模块用例描述
项目描述
用例名称评论审核
用例标识号06
参与者管理员
简要说明参与者可以管理自己的相册。
前置条件参与者已经登录了用户账号
1.管理员点击评论管理
2.查看评论列表
基本事件流3.点击审核
4.有效则审核成功。无效则提示相应错误给用户。
5.用例终止
在按“审核”按钮之前,参与者可以随按“取消”或“关
其他事件流
闭”按钮。
异常事件流提示错误信息,参与人确认
后置条件进入的评论,装载相应的数据
8
湖南商务职业技术学院毕业设计
2.3.4共享相册模块的用例
面向对象的需求分析阶段通过用例图和活动图进行了梳理分析。评论功能
模块具体的用例描述如图2-5所示,分别具有共享相册、查看别人相册等操作
功能。采用这样的架构,让用户界面层甚至可以不知道数据库的结构,当要对
数据进行维护的时候,它只要维护与业务层之间的接口即可。
图2-6共享相册用例图
通过对图2-5用例图进一步的细化分析,得到每个用例的描述表。共享相
册模块用例描述如表2-5所示,可以进行登录等操作。
表2-6共享相册模块用例描述
项目描述
用例名称共享相册
用例标识号06
参与者普通用户
简要说明参与者可以将自己的相册设置私密和共享的状态
前置条件参与者登录了用户的账号
1.参与者点击相册
2.点击相册状态的按钮
基本事件流3.选择相册状态
4.更改成功提示。无效则提示相应错误给用户。
5.用例终止
其他事件流五
异常事件流提示错误信息,参与人确认
后置条件共享相册的区域会显示该相册
9
湖南商务职业技术学院毕业设计
3系统概要设计
3.1系统设计原则
与用户进行了沟通,发现存放相片的方式过于不方便,与用户提出清风电
子相册系统的设计理论,了解到了自己设计的清风电子相册系统存在的系统问
题,希望通过系统设作流的处理现给用户。
3.2系统功能设计
系统模块化结构设计工作是在系统分析阶段对子系统划分的基础上,在进
一步地划分,将它逐层的分解成多个大小相同、功能单一、具有一定独立性的
模块,以便程序设计工作的同时,有加强了数据库之间的联系,使系统更加的
完美。根据清风电子相册系统的需求分析和用例建模分析,本文确定了清风电
子相册系统的主要功能模块,包括登录功能模块、我的相册功能模块、评论功
能模块、共享相册功能模块等四大功能看模块。清风电子相册系统的功能结构
图如图3-1所示。
图3-1清风电子相册系统功能结构图
10
湖南商务职业技术学院毕业设计
3.2.1登录模块功能设计
针对系统功能结构图进行进一步细化分析,得到各子模块相关功能描述,
功能描述使用功能流程图描述,如下图3-2。
图3-2登录功能模块流程图
表3-1登录功能模块相关功能描述
功能名称借阅卡类别管理
功能概述用户通过账号和密码进行登录操作
输入内容用户的账号和密码
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
11
湖南商务职业技术学院毕业设计
图3-3注册功能模块流程图
表3-2注册功能模块相关功能描述
功能名称用户注册账号
功能概述没有账号的用户可以通过注册账号来进行登录网站
输入内容新的账号和密码
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
登录功能模块相关功能文字描述:多个大小相同、功能单一、具有一定独
立性的模块,以便程序设计工作的同时,有加强了数据库之间的联系,使系统
更加的完美。根据清风电子相册系统的需求分析和用例建模分析,本文确定了
清风电子相册系统的主要功能模块,包括登录功能模块、我的相册功能模块、
评论功能模块、共享相册功能模块等四大功能看模块。
12
湖南商务职业技术学院毕业设计
3.2.2我的相册模块功能设计
针对系统功能结构图进行进一步细化分析,得到各子模块相关功能描述,
功能描述使用功能流程图描述,如下图3-4。
图3-4添加相册功能模块流程图
表3-3添加相册功能模块相关功能描述
功能名称添加相册
功能概述用户输入相册名和相册介绍和照片添加自己需要的相册
输入内容用户输入相册名和相册介绍和照片
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
13
湖南商务职业技术学院毕业设计
图3-5添加相册功能模块流程图
表3-4添加相册功能模块相关功能描述
功能名称添加相片
功能概述向相册中添加相片
输入内容选择图片
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
我的相册功能模块相关功能文字描述:多个大小相同、功能单一、具有一
定独立性的模块,以便程序设计工作的同时,有加强了数据库之间的联系,使
系统更加的完美。根据清风电子相册系统的需求分析和用例建模分析,本文确
定了清风电子相册系统的主要功能模块,包括登录功能模块、我的相册功能模
块、评论功能模块、共享相册功能模块等四大功能看模块。
3.2.3评论模块功能设计
针对系统功能结构图进行进一步细化分析,得到各子模块相关功能描述,
功能描述使用功能流程图描述,如下图3-7。
14
湖南商务职业技术学院毕业设计
图3-6用户评论功能模块流程图
表3-5用户评论功能模块相关功能描述
功能名称用户评论
功能概述用户评论喜欢的共享相册
输入内容评论内容
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
15
湖南商务职业技术学院毕业设计
图3-7审核评论功能模块流程图
表3-6审核评论功能模块相关功能描述
功能名称管理员审核评论
功能概述管理员对评论进行审核
输入内容审核内容
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
评论功能模块相关功能文字描述:多个大小相同、功能单一、具有一定独
立性的模块,以便程序设计工作的同时,有加强了数据库之间的联系,使系统
更加的完美。根据清风电子相册系统的需求分析和用例建模分析,本文确定了
清风电子相册系统的主要功能模块,包括登录功能模块、我的相册功能模块、
评论功能模块、共享相册功能模块等四大功能看模块。
3.2.4共享相册功能设计
针对系统功能结构图进行进一步细化分析,得到各子模块相关功能描述,
功能描述使用功能流程图描述,如下图3-9。
16
湖南商务职业技术学院毕业设计
图3-8共享功能模块流程图
表3-7共享功能模块相关功能描述
功能名称共享相册
功能概述用户将自己喜欢的相册进行分享
输入内容分享的相册
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
17
湖南商务职业技术学院毕业设计
图3-9审核功能模块流程图
表3-8审核功能模块相关功能描述
功能名称管理员审核共享相册
功能概述管理员对共享相册进行审核
输入内容审核内容
系统处理对于不同类别进行设计和规划,对类别增、删、改查功能
输出内容操作成功或者失败的提示
评论功能模块相关功能文字描述:多个大小相同、功能单一、具有一定独
立性的模块,以便程序设计工作的同时,有加强了数据库之间的联系,使系统
更加的完美。根据清风电子相册系统的需求分析和用例建模分析,本文确定了
清风电子相册系统的主要功能模块,包括登录功能模块、我的相册功能模块、
评论功能模块、共享相册功能模块等四大功能看模块。
3.3数据库设计
数据库设计往往是系统设计中最为核心的一个步骤。其设计的优良程度直
接影响系统的性能以及执行效率。
18
湖南商务职业技术学院毕业设计
3.3.1设计原则
为取得较好的设计效果,进行数据库设计需要遵从以下原则:
(1)标准化原则
数据库设计务必要遵照统一的设计标准与命名规范。具备统一设计分类与
编码规范的数据库不仅设计清晰直观,更有利于后期数据库及程序的维护,为以
后项目可扩展性提供条件。
(2)冗余原则
以往数据库的设计要求不允许有冗余,要尽可能的满足3NF。然而,在系统
运行过程中,满足3NF的数据库设计并不能高效运行。复杂的表间关系,会降
低访问数据库执行的效率;过低的范式标准,又会导致数据库数据。所以,在
数据库设计中,适当的冗余设计(允许派生性冗余设计,杜绝重复性冗余设
计),找到冗余与数据处理速度的平衡点,常常可以既提高速度,又能查询准确。
3.3.2概念设计
在数据库概念设计的过程中,采用E-R图来描述概念设计的结果。E-R图是
概念数据模型的高层描述所使用的数据模型或模式图,它为表述实体联系模式
图形式的数据模型提供了图形符号。根据清风电子相册管理系统数据进行分析,
其E-R图如下图3-11所示。
19
湖南商务职业技术学院毕业设计
图3-10清风相册管理系统E-R图
3.3.3逻辑设计
针对ER模型,通过数据实体属性、实体间关系的全面分析,结合清风相册
管理系统的实际需求,根据E-R图转化为关系模式的转换方法,建立起了本系
统的关系模式,具体转化后的关系模式如下:
用户表(用户id、用户姓名、用户头像、用户密码)
评论表(评论id、用户id、评论内容、相册id、评论状态)
相册表(相册id、用户id、相册名、相册介绍、相册状态)
相册照片表(相册照片表id、相册id、图片、添加时间)
3.3.4数据字典
用户表的表结构如表3-9所示,该表主要用于记录用户信息,主要字段为
id,username,picture,password。
表3-9用户表表结构
字段名称数据类型字段内容主键设置非空
idint(11)用户id主键
20
湖南商务职业技术学院毕业设计
usernamevarchar(255)用户名
picturevarchar(255)用户头像
passwordvarchar(255)用户密码
评论表的表结构如表3-10所示,该表主要用于记录评论信息,主要字段为
id,user_id,content,ph_id,status。
表3-10评论表表结构
字段名称数据类型字段内容主键设置非空
idint(11)相册的评论id主键
user_idint(11)评价人
contentvarchar(255)评论内容
ph_idint(11)相册的id
statusvarchar(255)状态/通过未通过
相册照片表的表结构如表3-11所示,该表主要用于记录相册照片信息,主
要字段为id,ph_id,picture,,create_time。
表3-11相册照片表表结构
字段名称数据类型字段内容主键设置非空
idint(11)相册照片id主键
ph_idint(6)相册id
picturevarchar(255)相册里的照片
create_timedatetime添加时间
相册照片表的表结构如表3-12所示,该表主要用于记录相册照片信息,主
要字段为id,status,name,userId,value。
表3-12相册表表结构
字段名称数据类型字段内容主键设置非空
idint(11)相册id主键
userIdint(6)用户id外键
namevarchar(255)相册名
valuevarchar(255)相册介绍
statusvarchar(255)相册状态
21
湖南商务职业技术学院毕业设计
数据库设计总结:根据用户的需求分析和用例建模分析,本文确定了清风
相册管理系统的主要功能模块,包括登录功能模块、我的相册功能模块、评论
功能模块、共享相册功能模块等四大功能看模块。
4系统详细设计
4.1用户登录管理子模块设计
4.1.1用户登录子模块详细设计
通过需求分析和概要设计对各子功能进行分析与设计,得到与用户管理子
功能模块静态结构类图,如图4-1所示。
图4-1清风用户登录相册管理系统的类图
表4-1用户管理子功能模块相关类及方法描述表
类名Phuser
描述清风相册用户实体类
属性id,username,picture,password,role
addUser()、
方法delUser()、
updUserPic()、
22
湖南商务职业技术学院毕业设计
updpassword()、
findById()、
findByname()、
findBynamea()
4.2我的相册管理子模块设计
4.2.1文档相册管理子模块详细设计
通过需求分析和概要设计对各子功能进行分析与设计,得到与我的相册管
理子功能模块静态结构类图,如图4-2所示。
图4-2清风相册管理系统的类图
表4-2我的相册管理子功能模块相关类及方法描述表
23
湖南商务职业技术学院毕业设计
类名PhPhoto
描述我的相册实体类
属性Id,user_id,tyoe,title,picture,content
PhPhotoController()、
addUser()、
delUser()、
方法
findAllPhoto()、
findAllPhotoByTitle()、
updPhotoTitle()、
4.3评论管理子模块设计
4.3.1评论管理子模块详细设计
通过需求分析和概要设计对各子功能进行分析与设计,得到评论管理子功
能模块静态结构类图,如图4-3所示。
图4-3评论管理系统的类图
表4-3评论管理子功能模块相关类及方法描述表
24
湖南商务职业技术学院毕业设计
类名PhComment
描述用户评论实体类
属性Id,userId,content,ph_id,status
FindAllPhoto(),
findAllhotoCpmment(),
方法
findAllPhotoComment()
,updStatus()
4.4共享相册管理子模块设计
4.4.1共享相册管理子模块详细设计
通过需求分析和概要设计对各子功能进行分析与设计,得到共享相册子功
能模块静态结构类图,如图4-4所示。
图4-4共享相册管理系统的类图
表4-4共享相册管理子功能模块相关类及方法描述表
类名PhPhoto
描述共享相册实体类
属性Id,user_id,tyoe,title,picture,content
25
湖南商务职业技术学院毕业设计
findAllPhoto(),
findAllPhotoByTitle(),
方法findPhoto(),
updPhoto(),
updPhotoTiTle()
5系统实现
5.1登录子模块实现
5.1.1登录模块界面设计
图5-1登入界面
5.1.2登录模块核心代码实现:
步骤1:登录成功
PublicvoidonAuthenticationSuccess(HttpServletRequestrequest,HttpServletResponse
response,Authenticationauthentication)throwsIOException,ServletException{
26
湖南商务职业技术学院毕业设计
QueryWrapperwrapper=newQueryWrapper();
wrapper.eq("username",SecurityContextHolder.getContext().getAuthentication().getName())
;
PhUserdiUser=phUserMapper.selectOne(wrapper);
Resultresult=com.photo.response.Result.ok().message("登录成功").data("user",diUser);
this.WriteJSON(request,response,result);
}
步骤2:用户注册
@PostMapping("/add")
publicvoidaddUser(@RequestParam("file")MultipartFilefile,HttpServletRequestrequest,
HttpServletResponseresponse,@RequestParam("username")Stringusername,
@RequestParam("password")Stringpassword,@RequestParam("role")Stringrole)throws
Exception{
PhUsershUser=newPhUser();
shUser.setUsername(username);
shUser.setPassword(password);
shUser.setRole(role);
QueryWrapperwrapper=newQueryWrapper();
wrapper.eq("username",username);
if(phUserMapper.selectOne(wrapper)!=null){
Resulterror=Result.error().message("用户已存在");
this.WriteJSON(request,response,error);
}else{
byte[]bytes=file.getBytes();
StringimageFileName=file.getOriginalFilename();
StringfileName=UpPhotoNameUtils.getPhotoName("img",imageFileName);
Pathpath=Paths.get(""+fileName);
//“C:\\框架\\D4\\d4_pc_ui\\src\\assets\\images\\img\\”为本地目录
27
湖南商务职业技术学院毕业设计
Files.write(path,bytes);//写入文件
Stringavatar_url=fileName;
shUser.setPicture(avatar_url);
response.reset();
shUser.setPassword(new
BCryptPasswordEncoder().encode(shUser.getPassword()));
if(phUserMapper.insert(shUser)>0){
Resultok=Result.ok().message("注册成功");
this.WriteJSON(request,response,ok);
}else{
Resulterror=Result.error().message("注册失败");
this.WriteJSON(request,response,error);
}
}
}
步骤3:用户修改信息
@PostMapping("/updpassword")
publicvoidupdpassword(HttpServletRequestrequest,HttpServletResponseresponse,
@RequestParam("password")Stringpassword,@RequestParam("rpassword")String
rpassword,@RequestParam("id")intid)throwsException{
PhUseranUser1=phUserMapper.selectById(id);
BCryptPasswordEncoderencoder=newBCryptPasswordEncoder();
Stringpassword1=newBCryptPasswordEncoder().encode(rpassword);
if(encoder.matches(password,anUser1.getPassword())){
anUser1.setPassword(password1);
inti=phUserMapper.updateById(anUser1);
if(i>0){
28
湖南商务职业技术学院毕业设计
Resultok=Result.ok();
this.WriteJSON(request,response,ok);
}else{
Resulterror=Result.error();
this.WriteJSON(request,response,error);
}
}else{
Resulterror=Result.error();
error.setMessage("密码不正确");
this.WriteJSON(request,response,error);
}
}
步骤4:查找用户
@PostMapping("/findByname")
publicvoidfindByName(HttpServletRequestrequest,HttpServletResponseresponse,
@RequestParam("username")Stringusername,@RequestParam("size")intsize,
@RequestParam("current")intcurrent)throwsException{
QueryWrapperwrapper=newQueryWrapper();
wrapper.like("username",username);
Page<PhUser>page=newPage<>(size,current);
Page<PhUser>pages=phUserMapper.selectPage(page,wrapper);
List<PhUser>list=pages.getRecords();
inttotal=phUserMapper.selectCount(wrapper);
if(list.size()>0){
Resultok=Result.ok().data("user",list).data("total",total);
this.WriteJSON(request,response,ok);
}
Resulterror=Result.error();
29
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 4教育信息化与信息化人才培养
- 单板加工市场风险识别与应对措施考核试卷
- 2025年度临床试验合同主体临床试验合同续签与变更4篇
- 2025版学生暑假工就业保障及培训合同3篇
- 2025年增资协议签署注意事项
- 2025年健身营销推广合同
- 2025年健身器材产品责任保险合同
- 二零二五年度户外木饰面景观工程设计合同2篇
- 二零二五版电影主题展览赞助协议3篇
- 二零二五年度2025安保员聘用及安全教育培训服务合同3篇
- 不同茶叶的冲泡方法
- 光伏发电并网申办具体流程
- 建筑劳务专业分包合同范本(2025年)
- 企业融资报告特斯拉成功案例分享
- 五年(2020-2024)高考地理真题分类汇编(全国版)专题12区域发展解析版
- 《阻燃材料与技术》课件 第8讲 阻燃木质材料
- 低空经济的社会接受度与伦理问题分析
- 法考客观题历年真题及答案解析卷一(第1套)
- 央国企信创白皮书 -基于信创体系的数字化转型
- 6第六章 社会契约论.电子教案教学课件
- 运动技能学习与控制课件
评论
0/150
提交评论