【GHS】分页、逻辑删除

编程开发   © 文章版权由 admin 解释,禁止匿名转载

#楼主# 2020-12-30

通过mybatis-plus实现分页,也是很简单,插件大法。 ### 一、分页 #### 1、配置分页插件 把分页的插件也配置到统一的配置类里: ``` @Configuration // 配置扫描mapper的路径 @MapperScan("com.pingguo.mpdemo.mapper") public class MpConfig { // 乐观锁插件 @Bean public OptimisticLockerInterceptor optimisticLockerInterceptor() { return new OptimisticLockerInterceptor(); } // 分页插件 @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } } ``` #### 2、使用分页 还是在测试类中增加测试方法,这里列了常用到的方法,后面配合前端页面做分页功能时候,都要用上。 ``` // 测试分页 @Test void testPaging() { // 创建分页对象,current为当前页数,size为每页最大记录数 Page pageUser = new Page>(1, 5); // 调用分页查询方法,传入分页对象-pageUser,wrapper是构造条件对象,这里暂时写null userMapper.selectPage(pageUser, null); System.out.println("当前页:"+ pageUser.getCurrent()); System.out.println("当前页数据list集合:" + pageUser.getRecords()); System.out.println("每页显示记录数:" + pageUser.getSize()); System.out.println("总记录数:" + pageUser.getTotal()); System.out.println("总页数:" + pageUser.getPages()); System.out.println("是否有下一页:" + pageUser.hasNext()); System.out.version=null), User(id=4, name=daxiong, age=22, email=pingguotest1@pingguo.com, createTime=null, updateTime=Fri Dec 25 00:55:02 CST 2020, version=null), User(id=5, name=wesson5, age=20, email=pingguotest1@pingguo.com, createTime=null, updateTime=null, version=null), User(id=1342322873243996161, name=李白6, age=66, email=laowang@123.com, createTime=Fri Dec 25 12:14:47 CST 2020, updateTime=Fri Dec 25 15:43:11 CST 2020, version=2)] 每页显示记录数:5 总记录数:12 总页数:3 是否有下一页:true 是否有上一页:false ``` ### 二、逻辑删除 逻辑删除并不是真正从数据表开删除数据记录,只是通过一个字段去标识出这条记录被删除了,比如`deleted`,`0`表示未删除,`1`表示已删除。 #### 1、在数据表增加deleted字段。 ![](https://img2020.cnblogs.com/blog/1268169/202012/1268169-20201228153912370-437939274.png) #### 2、实体类添加注解@TableLogic 在对应实体类里增加属性,并且加上`@TableLogic`注解。为了方便,我还加了自动填充。 ``` @Data public class User { @TableId(type = IdType.ID_WORKER) private Long id; private String name; ... ... @TableLogic // 加上逻辑删除注解 @TableField(fill = FieldFill.INSERT) //为了方便,加了自动填充 private Integer deleted; } ``` #### 3、自动填充(非必须) 自动填充的话.

成为第一个回答人

评论

登录后才可发表内容
  • 主题

    106

  • 帖子

    82

  • 关注者

    0

Copyright © 2019 凯特网.   Powered by HYBBS 2.3.4  

Runtime:0.2233s Mem:2058Kb