java代码实现垃圾站

使用到的技术:

SSM框架+LayUi前端框架

想要的效果:

java的数据表格删除数据时,并没有真正从数据库中永久的删除,而是还是在数据库中,只不过不显示在页面中。当在写好的回收站页面上删除操作时,才是真正的从数据库中删除数据,当然,也可以恢复数据到页面上展示。

提个醒:

确定要做回收站功能,就要先做好准备工作。否则中途或者之后再做的话,工作量个难度相对会加大。

进入正题:

1、给数据库增加一个字段isdelete。

这个字段用来区分是页面数据还是回收站数据,用布尔类型对数据库比较优化。我此处使用的是bigint类型。
在这里插入图片描述

2、前台数据表格页面展示表中isdelete字段为1的数据
  • 写相应的sql语句:
    在这里插入图片描述

  • mybatis的拦截器自带分页功能,前面在将mybatis的时候讲过。此时需要注意的是后台返回给layui需要的数据格式。之前也将过的。下面将简单的贴上几张代码图

    LayUi数据表格需要的数据格式:封装到了类PageResult中,返回给layui的时候就匹配上了
    关于参数page对象,下面会讲解在这里插入图片描述
    LayUi需要的分页数据是:page和limit
    在这里插入图片描述
    所以建个BaseQuery类,其中就有这两个字段
    在这里插入图片描述
    父类mapper层
    在这里插入图片描述
    mybatis中拦截器自带分页的page对象的部分源码
    在这里插入图片描述
    父类service接口
    在这里插入图片描述
    service层的实现层的父类
    在这里插入图片描述
    自己类的service层的接口和实现类就直接继承相应的父类即可,父类中已经有了需要的方法

controller层
在这里插入图片描述
最后layui中数据表格中显示的数据为
只有部分数据,数据库中isdelete字段值为2的就没有显示出来,达到预期效果在这里插入图片描述

3、由于上面已经拿到了数据表格中展示的数据,所以下面就写回收站中应该展示的数据。

sql语句: isdelete字段值为2的就是垃圾站的数据
在这里插入图片描述
mapper层:
自己写一个方法,方法名就是sql语句的id,也是返回page对象(上面说明了这个对象的来源)
在这里插入图片描述
service的接口
返回定义的PageResult对象。具体原因上面也说明了
在这里插入图片描述
service层的实现类
在这里插入图片描述
controller层
在这里插入图片描述
页面展示的垃圾站数据:
写一个弹出框,中再嵌套数据表格即可这样展示。有分页功能,没有做高级查询的,还有恢复功能和彻底删除功能。
在这里插入图片描述

4、关于上面没有完成功能的大体原理分析:

分析上面未完成的功能原理:
主页面展示的数据点击删除后,实际上是假删除,只不过是将数据库中的isdelete字段值右1改为了2。
在这里插入图片描述
当然;在垃圾站的展示页面上的恢复(批量恢复)和彻底删除功能。

恢复(批量恢复):同样的方法,先根据id查询出来数据后将数据库中的isdelete字段值由2改为1即可。
彻底删除:就是真正的从数据库中删除。执行删除的sql语句即可

5、总结一波

实际上就是就是给表一个字段,哪一个值表示在主页面显示,哪一个值表示在回收站显示。互相转变就是更改字段的值罢了。如果中途要加回收站功能,注意sql语句中的字段不能少。

有时间会加以完善此处

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值