首页 > 其他分享 >在代码中配置乐观锁插件和分页插件

在代码中配置乐观锁插件和分页插件

时间:2023-09-07 22:02:47浏览次数:56  
标签:插件 分页 代码 配置 MybatisPlusInterceptor import interceptor

在代码中配置乐观锁插件和分页插件

在代码中配置乐观锁插件和分页插件,您可以按照以下步骤进行操作:

  1. 配置乐观锁插件:乐观锁插件是 MyBatis Plus 提供的功能之一,您可以在配置类中进行配置。假设您使用的是 Spring Boot,可以创建一个配置类(如 MyBatisConfig)并添加 @Configuration 注解,然后在该类中配置乐观锁插件。
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;

@Configuration
public class MyBatisConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
        return interceptor;
    }
}
  1. 配置分页插件:分页插件是另一个常用的 MyBatis Plus 插件,您可以在配置类中进行配置。在上述的 MyBatisConfig 配置类中,可以继续添加分页插件的配置。
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

@Configuration
public class MyBatisConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
        
        // 配置分页插件
        PaginationInnerInterceptor paginationInterceptor = new PaginationInnerInterceptor();
        // 设置最大单页限制数量,默认 500 条,-1 表示不受限制
        paginationInterceptor.setMaxLimit(-1L);
        interceptor.addInnerInterceptor(paginationInterceptor);
        
        return interceptor;
    }
}

在上述示例代码中,我们在 MybatisPlusInterceptor 中添加了 OptimisticLockerInnerInterceptorPaginationInnerInterceptor,分别用于乐观锁和分页功能。

需要注意的是,具体插件的导入路径可能会根据您使用的 MyBatis Plus 版本而有所不同。请根据您实际使用的版本进行导入。

通过以上配置,您可以在代码中配置乐观锁插件和分页插件,并将它们应用到您的 MyBatis Plus 功能中。

标签:插件,分页,代码,配置,MybatisPlusInterceptor,import,interceptor
From: https://blog.51cto.com/u_15399050/7402039

相关文章

  • django-普通分页实现
    views.py代码:#普通分页功能defperson_page(request):#从URL中取出参数page,这个参数是“page=1”形式cur_page_num=request.GET.get('page')#取得PrettyNum模型中的记录总数total_count=models.PrettyNum.objects.all().count()#设定每......
  • 代码随想录刷题记录——双指针篇
    27.移除元素题目链接快慢指针,最终返回index值为移除元素后的数组末尾元素下标+1.#include<vector>usingnamespacestd;classSolution{public:intremoveElement(vector<int>&nums,intval){//快慢指针intnums_length=nums.size();......
  • 代码随想录个人笔记——字符串篇
    344.反转字符串 题目链接#include<bits/stdc++.h>usingnamespacestd;classSolution{public:voidreverseString(vector<char>&s){intlen=s.size();for(inti=0,j=len-1;i<j;i++,j--){//第一种//i......
  • 三大工厂模式 简单工厂模式,工厂方法模式,抽象工厂模式 手撕代码
    1.简单工厂模式#include<bits/stdc++.h>usingnamespacestd;classproduce{private:intwidth;intheight;public:produce(intwidth,intheight):width(width),height(height){}virtual~produce(){}};classA:publicproduce{public......
  • 代码随想录算法训练营第二天
    代码随想录算法训练营第二天|LeetCode977(有序数组的平方)LeetCode209(长度最小的子数组)LeetCode59(螺旋矩阵II)977:有序数组的平方LeetCode977(有序数组的平方)思路:方法一:暴力方法直接原地平方后,直接调用数组排序方法二:双指针前后遍历,构造结果数组,保证有序方法......
  • drf—过滤、分页、异常
    session回顾写一个登录接口——保存用户登录状态签发阶段:做了三件事情:1、生成一个随机字符串2、django—session表中插入数据3、把随机字符串以cookie形式返回给前端(存在浏览器的cookie中)认证阶段:前端自动携带cookie到后端,sessionid:随机字符串session的流......
  • drf 分页类
    一、分页类型一1、写一个分页类,继承 PageNumberPaginationweb用这个多http://api.example.org/accounts/?page=4http://api.example.org/accounts/?page=4&page_size=100fromrest_framework.paginationimportPageNumberPagination,LimitOffsetPagination,CursorPagin......
  • 数据结构代码题-栈、队列
    目录栈、队列栈队列栈和队列的应用栈、队列栈栈的定义#defineMaxSize100//储存空间的初始分配量typedefintElemType;typedefstruct{inttop;//栈顶指针ElemTypedata[MaxSize];//存放元素的动态数组空间}sqstack;链栈的数据结构描述type......
  • 不用额外插件?RunnerGo内置压测模式怎么选
    我们在做性能测试时需要根据性能需求配置不同的压测模式如:阶梯模式。使用jmeter时我们需要安装插件来配置测试模式,为了方便用户使用,RunnerGo内嵌了压测模式这一选项,今天给大家介绍一下RunnerGo的几种压测模式和怎么根据性能需求选择合适的压测模式。RunnerGo提供了以下五种压测模式......
  • 华为云Astro低代码三侠「踢馆」 ,学员:也带带我!
    终日专注「敲代码」的三位华为云Astro平台开发者,7月9日,在华为开发者大会2023极客挑战赛上,给学员们开上了「小灶」。当多数人仍纠结用哪种编程语言呈现数据时,管h已利用华为云Astro的高清大屏建构出未来软件世界的定制版图。作为华为云Astro可视化大屏开发者,她现身极客挑战赛,在华为云......