Mybatis-plus插件

分页插件

实现:

1.配置类中注册MyBatisPlus的核心插件,添加插件:

基于拦截器

@Configuration
public class MybatisConfig{
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor(){
//1.初始化核心插件
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
//2.添加分更插件
PaginationInnerInterceptor pageInterceptor = new 
  PaginationInnerInterceptor(DbType.MysQL);
pageInterceptor.setMaxLimit(1000L);
//设置分页上限
interceptor.addInnerInterceptor(pageInterceptor);
return interceptor;
}
}

使用IService的分页api

@Testvoid testPageQuery(){
//1.查询
int pageNo =1,pagesize =5;
//1.1.分页参数
Page<User>page=Page.of(pageNo,pagesize);
//1.2.排序参数,通过0rderItem来指定
page.addOrder(new OrderItem("balance",false));
//1.3.分页查询
Page<User>p=userservice.page(page);
//2.总条数
System.out.println("total ="+ p.getTotal());
//3.总页数
System.out.println("pages ="+ p.getPages());
//4.分页数据
List<User>records =p.getRecords();
records.forEach(System.out::println);
}

通用的分页实体:

分页参数在多处使用,建议额外额外一个实体:

@ApiModel(descriptopm = "分页查询实体")
public classPageQuery{
@ApiModelProperty("页码")
private Integer pageNo;
@ApiModelProperty("页码")
private Integer pagesize;
@ApiModelproperty("排序字段")
private string sortBy;
@ApiModelproperty("是否升序")
private Boolean isAsc;
}
public class UserQuery extends PageQuery 

转换类型的代码,可以封装,然后对应功能考虑

MyBatis-Plus是一个基于MyBatis的增强工具,它提供了一些常用的插件来简化开发过程。其中一些常用的插件包括自动分页插件、防止全表更新与删除插件和乐观锁插件。自动分页插件(PaginationInnerInterceptor)可以自动将查询结果进行分页处理,简化了分页操作的代码编写。防止全表更新与删除插件(BlockAttackInnerInterceptor)可以防止误操作导致全表更新或删除的情况发生,提高了数据安全性。乐观锁插件(OptimisticLockerInnerInterceptor)可以通过版本号或者时间戳来实现乐观锁机制,避免并发更新时的数据冲突问题。\[3\] 在使用MyBatis-Plus插件时,需要在Spring Boot配置文件中进行相应的配置。具体的配置方式可以参考MyBatis-Plus的官方文档或者参考其他开发者的经验分享。例如,可以通过在配置文件中添加乐观锁插件的配置来启用乐观锁功能。\[2\]同时,需要注意不同版本的MyBatis-Plus可能会有不同的插件类名或配置方式,所以在使用不同版本的MyBatis-Plus时需要注意插件的兼容性和配置方式的变化。\[2\] #### 引用[.reference_title] - *1* *2* [Mybatis-Plus插件mybatis插件机制、执行分析插件、性能分析插件、乐观锁插件)](https://blog.csdn.net/I_r_o_n_M_a_n/article/details/123542782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [MyBatis-Plus 常用插件](https://blog.csdn.net/m0_53067943/article/details/126112463)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值