0
点赞
收藏
分享

微信扫一扫

mybatispls中乐观锁:

Yaphets_巍 2022-01-07 阅读 41

mybatisplas中乐观锁:

仅个人理解,给位大佬勿喷

生活中的例子:


乐观锁案例

1:数据库表中添加锁标记字段在这里插入图片描述

在这里插入图片描述
2:实体类

@Data
public class User {
private Long id;

@Version
private Integer version;

3:配置乐观锁拦截器实现锁机制对应的动态SQL语句拼装

@Configuration
public class MpConfig {
    @Bean
    public MybatisPlusInterceptor mpInterceptor() {
        //1.定义Mp拦截器
        MybatisPlusInterceptor mpInterceptor = new MybatisPlusInterceptor();   //2.添加乐观锁拦截器
    mpInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
    
    return mpInterceptor;
}
④:测试
public class test{
@Test
	void updateVersion(){
/1.先通过要修改的数据id将当前数据查询出来
    User user = userDao.selectById(3L);     //version=3
    User user2 = userDao.selectById(3L);    //version=3
    user2.setName("Jock aaa");
    userDao.updateById(user2);              //version=>4
    user.setName("Jock bbb");
    userDao.updateById(user);  
	}
}

sql语句

在这里插入图片描述

思路解析

举报

相关推荐

0 条评论