当前课程知识点:软件开发实训--动态网站开发 >  6 用户管理功能实现 >  6.3用户存储和删除控制器实现 >  6.3.1用户存储和删除控制器实现

返回《软件开发实训--动态网站开发》慕课在线视频课程列表

6.3.1用户存储和删除控制器实现在线视频

下一节:6.4.1用户添加、编辑界面实现

返回《软件开发实训--动态网站开发》慕课在线视频列表

6.3.1用户存储和删除控制器实现课程教案、知识点、字幕

同学你好

欢迎回到软件开发实训课堂

上节课咱们已经在控制器里边实现了列表和编辑

那么这节课咱们来看一下存储和删除

该怎么实现

在编辑和新增完成后

那么你需要去保存

所以我们需要一个存储

存储的是post请求

我们强制让他使用post请求

saveuser

然后我们public String save

这里边路径对单个用户来操作的话

我们就不要加S

editusers

我们就知道我们是对单个用户的操作

对于多个用户

像listuser我们加上一个S表示

我们对多用户的操作

这也是能够通过名称来去判断

一个是因为我们

存储数据量比较大

第二个我们的信息往往需要隐藏

具有一定的隐秘性

所以我们采用post来提交

那么提交上来的时候

他是user对象

user对象

有的信息是不能为空的

所以我们需要一个Valid去校验它

第二个参数我们使用BindingResult

来处理用户信息的校验结果

可以判断

如果校验结果是有错误的

我们可以进行一个处理

这里我们简单的先让他返回到我们的edituser

在返回时

如果说用户的uid不为空

我们就直接返回uid对象

带着uid的user对象

如果说uid为空

那么我们可以让它怎么样

转回到我们编辑的页面

让这个信息可以保留

那么为了保留信息

我们还需要去把原有的信息给他转发过去

这里我们先看如果说没有错误的情况

如果没有错误

我们保存完成后

也可以根据需要去转发

比如说保存完后继续添加

那么我们可以通过一些参数来设置

这里我们直接就让他返回到我们的列表页面

电表页面的返回也不能只是返回到界面

而是返回到控制器

redirect

下面我们来添加数据的存储

userService.Save

把我们验证通过的用户存到数据库去

这样我们把错误消息的验证以及我们存储后

转向的目标也就确定好了

这是有关存储方法的一个简单实现

再一个还需要有删除用户和锁定用户状态

对于用户状态的变更

我们讲可以直接使用save来进行存储用户信息

另外一个我们可以单独的使用用户信息

我们先来看删除

删除呢

一般情况下我们用get请求

请求删除的某一个用户

而这个uid是不可以为空的

我们通过路径来获得我们需要的uid

删除完成后

我们需要转向

userService.deleteById

但这里边我们使用注解PathVariable

它能够保证我们的uid不为空

因为PathVariable他的默认是必须要提供uid

才能够对应到这个地址

否则的话是无法对应到这个地址的

所以要注意删除完成后

我们可以直接返回到我们的列表页面

这是对于单个的删除

当然我们可以实现对于多个用户的删除

对于多个用户删除这个请求

我们可以使用get请求

也可以使用post请求

因为传递进来的信息

我们可以使用数组列表集合

或者是我们使用JSON数据

这样我们就能接收到多个用户的ID信息

从而实现一个多用户的删除

这里我们接收JSON格式的数据

删除多个用户

我们使用deletes

然后是uids

uids

我们把它从字符串

转换成我们需要的信息

它是一个JSON的字符串

所以我们直接把它取过来

然后执行userService.delete

list user

这里我们提供了一个user对象的批量删除

并没有提供uid的批量删除

那么这个时候我们需要把服务

去实现一个相对应的方法

另外一个我们可以在这里构造一个user列表

在依赖里面加入我们JSON的依赖包

保存

现在我们来引用JSON包

先注释掉这些错误信息

把错误排除掉

然后我们通过依赖关系构建让他把它下来

创建成功后

回过头来

我们再次去引用它

我们打开他的包来看一下

他的包名和它的相关类名

就叫JSONObject

这回有了

我们把它导进来

他没有构造器

是因为它提供了静态的方法

我们通过它来进行解析

解析完成后

我们会得到JSON的一个ID集合

它应该是一个数组

所以我们来设定获得数组对象

直接获得数组对象

getObject

应该是getArray

来获得数组对象

JSON的数组对象

关键字呢

也用uid这里要注意前端传递时使用

uids作为JSON数据的关键键

作为键就行了

这样我们获得了JsonArray这个数组

然后我们可以对这个数组进行处理

看一下

数组它提供了get方法

通过索引来获得一个对象

而我们这里的对象实际上就是一个字符串

所以我们看一下它有没有获取getString

看一下

它直接获得这个字符串

还可以获得整形

我们先用获取整形的方式或者整形Value来获取方式

去把它得到

我们来看一下

还可以把它转换成iterator的对象来进行枚举处理

以及ListIterator

获取成集合

但是不管怎么样

他存的是一个字符串

所以我们还是获取整形数组

进行循环

先把它的长度拿出来

这是它元素的个数

然后我们循环

去数据库进行相关的查询

用这个对象来实现

findAll

ByIdArr.get Integer

把转成了整形

转出来后把它放到我们的users里边

这样我们就完成了一个批量删除的操作

但实际上这个我们需要很多次查询

你要是删除一百个

他就要循环一百次去查询

这样相对来说效率就比较低下了

每次循环ilen次来执行

ilen个查询

再去删除

这是一个最基本的一个操作思路

实际上后面我们再来说一下

如何不执行查询

然后进去后直接执行我们的delete语句

更加提高效率

我们现在先用这种删除来实现它

最后我们要返回的

到我们列表页面

redirect:/listusers

这是我们对删除进行的一个操作

让用户失效

我们可以也使用get请求就可以了

给它加上一个Id

通过路径获取数据

而且uid是必须的

那么我们先去查询他

得到我们的user对象

实际上这里边状态它有两种

一种是有效

一种是无效

我们这里边在实体里边给它注释一下

用户是否有效时

用零来表示无效

用一来表示有效

一定要记住

这个不能乱了

我们这里边就来判断它

如果user.get状态等于0

那么我们就把它设置为1

否则的话就把它设置为零

这样去设置它

但实际上你看一下

这是设置用户状态

为有效

就是当无效时

无效时

设置用户状态为有效

相反

如果说我们原来是有效的

现在把它设置时就要设置为无效的

设置为无效

这两条语句就已经把两个状态设置完成了

但实际上你发现实际状态要么是零

要么是一

因此上我们在设置的时候可以使用更简单的方式

看一下

我们用user.set

时直接去设置它

用一减去user点

getValid

这样我们就用一条语句可以实现

它原来如果是有效的

那么我们这样一减的话

它就是无效了

这样相互切换它的状态

最后我们去返回一下

返回到我们的列表页面

这就是我们对用户控制器的实现

我们把它保存起来

有关用户的控制器服务

还有DAO咱们都已经实现了

那么下面实现的就应该是界面了

有关控制器中存储和删除的实现就讲到这里

下节课我们再见

软件开发实训--动态网站开发课程列表:

1 前端需求分析

-1.1课程介绍

--1.1.1课程介绍

--1.1.2课程介绍PPT

--1.1.3随堂测试

-1.2网站需求分析

--1.2.2网站需求分析

--1.2.3需求PPT

--1.2.4随堂测试

-1.3网站首页分析

--1.3.1网站首页分析

--1.3.2首页分析PPT

--1.3.3随堂测试

-1.4导航菜单分析

--1.4.1导航菜单分析

--1.4.2课程PPT

--1.4.3随堂测试

-1.5内容区域分析

--1.5.1内容区域分析

--1.5.2课程PPT

--1.5.3随堂测试

-1.6内容副页面分析

--1.6.1副页面分析

--1.6.2课程PPT

--1.6.3软件系统需求分析

-1.7编写需求文档

-1.8需求分析理解

2 后端分析

-2.1后端页面总体分析

--2.1.1后端页面总体设计

--2.1.2课程PPT

--2.1.3随堂测试

-2.2用户管理功能设计

--2.2.1用户管理功能分析

--2.2.2课程PPT

--2.2.3随堂测试

-2.3内容与分类功能分析

--2.3.1内容与分类功能分析

--2.3.2课程PPT

--2.3.3随堂测试

-2.4网站配置功能设计

--2.4.1网站配置功能设计

--2.4.2课程PPT

--2.4.3软件系统设计

--2.4.4随堂测试

-2.5数据库及表结构分析

--2.5.1数据库及表结构分析

--2.5.2课程PPT

--2.5.3数据库设计

-总体设计文档

3 接口设计

-3.1前台模板约定

--3.1.1前台模板约定

--3.1.2课程PPT

--3.1.3随堂测试

-3.2网站配置接口设计

--3.2.1网站配置接口设计

--3.2.2课程PPT

--3.2.3随堂测试

-3.3菜单接口设计

--3.3.1菜单接口设计

--3.3.2课程PPT

--3.3.3随堂测试

-3.4内容接口设计

--3.4.1内容接口设计

--3.4.2课程PPT

--3.4.3随堂测试

-3.5幻灯片接口设计

--3.5.1幻灯片接口设计

--3.5.2课程PPT

--3.5.3随堂测试

-补充设计文档

-3.7接口设计

4 功能设计

-4.1用户管理功能设计

--4.1.1用户管理功能设计

--4.1.2课程PPT

--4.1.3随堂测试

-4.2菜单管理功能设计

--4.2.1菜单管理功能设计

--4.2.2课程PPT

--4.2.3随堂测试

-4.3内容管理功能设计

--4.3.1内容管理功能设计

--4.3.2课程PPT

--4.3.3随堂测试

-4.4网站配置信息设计

--4.4.1网站配置信息设计

--4.4.2课程PPT

--4.4.3随堂测试

-完成设计文档

-4.6随堂测试

5 环境搭建与开发

-5.1开发环境搭建

--5.1.1环境搭建

--5.1.2随堂测试

-5.2Web前端环境搭建

--5.2.1Web前端环境

-5.3创建用户实体

--5.3.1用户实体创建

--5.3.2随堂测试

-5.4用户实体表创建与初始化

--5.4.1用户实体表创建与初始化

--5.4.2随堂测试

-5.5用户数据访问接口实现

--5.5.1用户数据访问接口实现

--5.5.2随堂测试

-5.6环境搭建问题

-5.7环境搭建问题

6 用户管理功能实现

-6.1用户服务层接口实现

--6.1.1用户服务层接口实现

--6.1.2随堂测试

-6.2用户列表和编辑控制器实现

--6.2.1用户列表和编辑控制器实现

--6.2.2随堂测试

-6.3用户存储和删除控制器实现

--6.3.1用户存储和删除控制器实现

-6.4用户添加、编辑界面实现

--6.4.1用户添加、编辑界面实现

-6.5用户管理添加用户调试

--6.5.1用户管理添加用户调试

-6.6开发

7 用户管理功能实现二

-7.1用户查询模板实现

--7.1.1用户查询模板实现

--7.1.2随堂测试

-7.2用户信息编辑的实现

--7.2.1用户信息编辑的实现

-7.3单个用户删除实现

--7.3.2单个用户删除实现

-7.4多个用户删除实现

--7.4.1多个用户删除实现

8 用户管理功能实现三

-8.1用户列表分页基本实现

--8.1.1用户列表分页基本实现

-8.2用户列表查询结果分页实现

--8.2.1用户列表查询结果分页实现

-8.3通用日期处理

--8.3.1通用日期处理

-8.4整型日期处理

--8.4.1整型日期处理

--8.4.2随堂测试

-8.5枚举数据的应用

--8.5.1枚举数据的应用

--8.5.2Spring Boot开发

9 后台主界面实现

-9.1登录逻辑实现

--9.1.1登录逻辑实现

--9.1.2随堂测试

-9.2登录界面及流程调试

--9.2.1登录界面及流程调试

--9.2.2随堂测试

-9.3管理主界面实现

--9.3.1管理主界面实现

--9.3.2随堂测试

-9.4授权验证拦截器实现

--9.4.1授权验证拦截器实现

--9.4.2随堂测试

-9.5拦截器调试

--9.5.1拦截器调试

10 分类管理实现

-10.1分类接口实现

--10.1.1分类接口实现

-10.2分类添加、编辑实现

--10.2.1分类添加、编辑实现

-10.3分类树结构实现

--10.3.1分类树结构实现

-10.4分类删除实现

--10.4.1分类删除实现

--10.4.2随堂测试

11 内容管理实现

-11.1内容实体定义

--11.1.1内容实体定义

-11.2相关接口定义

--11.2.1相关接口定义

-11.3服务接口实现

--11.3.1服务接口实现

-11.4内容添加、编辑模板实现

--11.4.1内容添加、编辑模板实现

-11.5内容添加、编辑控制器实现

--11.5.1内容添加、编辑控制器实现

-11.6内容检索页面实现

--11.6.1内容检索页面实现

-11.7内容分类树实现

--11.7.1内容分类树实现

12 UEditor富文本编辑器

-12.1修改UEditor相关问题

--12.1.1修改UEditor相关问题

-12.2整合UEditor到内容编辑界面

--12.2.1整合UEditor到内容编辑界面

-12.3UEditor图片对话框应用

--12.3.1UEditor图片对话框应用

-12.4文件上传问题处理

--12.4.1文件上传问题处理

13 网站配置管理实现

-13.1网站配置相关类实现

--13.1.1网站配置相关类实现

-13.2网站配置界面模板实现

--13.2.1网站配置界面模板实现

-13.3网站配置调试

--13.3.1网站配置调试

14 网站前端组件实现

-14.1网站首页布局实现

--14.1.1网站首页布局实现

-14.2菜单Vue组件实现

--14.2.1菜单Vue组件实现

--14.2.2随堂测试

-14.3幻灯片Vue组件实现

--14.3.1幻灯片Vue组件实现

-14.4滚动Vue组件实现

--14.4.1滚动Vue组件实现

--14.4.2随堂测试

-14.5滚动接口实现

--14.5.1滚动接口实现

-14.6滚动接口调试

--14.6.1滚动接口调试

-14.7幻灯片接口实现

--14.7.1幻灯片接口实现

15 网站前端页面实现

-15.1首页区域实现

--15.1.1首页区域实现

-15.2首页内容脚本实现

--15.2.1首页内容脚本实现

-15.3首页完善

--15.3.1首页完善

-15.4Vue组件放入单文件

--15.4.1Vue组件放入单文件

-15.5详细页面实现

--15.5.1详细页面实现

-15.6前端问题

16 测试与发布

-16.1网站测试介绍

--16.1.1网站测试介绍

--16.1.2课程PPT

-16.2功能测试

--16.2.1功能测试

--16.2.2课程PPT

-16.3打包发布

--16.3.1打包发布

-16.4部署运行

--16.4.1部署运行

--16.4.2随堂测试

6.3.1用户存储和删除控制器实现笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。