项目技术点-MybatisPlus 实现乐观锁(2) | 学习笔记

简介: 快速学习 项目技术点-MybatisPlus 实现乐观锁(2)

开发者学堂课程【微服务+全栈在线教育实战项目演练(SpringCloud Alibaba+SpringBoot)项目技术点-MybatisPlus 实现乐观锁(2)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/667/detail/11273


项目技术点-MybatisPlus 实现乐观锁(2)


目录:

一.乐观锁的具体实现

二.演示效果


一、乐观锁的具体实现

第一步骤:

(1)表添加字段,作为乐观锁版本号

@Version     int    11

(2)对应实体类添加版本号属性

private Integer version;//版本号

第二步骤:

(1)在实体类版本号属性添加注解

@version

private Integer version://版本号

第三步骤

(1)配置乐观锁插件

(1.1)spring xml:

<bean class"com.baomidou.mybatisplus.extension.plugins.0ptimisticLockerInterceptor"/>

(1.2)spring boot:

@Bean

public OptimisticLockerInterceptor optimisticLockerInterceptor()returnnewOptimisticLocker Interceptor();

注:可以在启动类里面添加,更多添加在配置类

2.乐观锁插件

Configuration

@MapperScan("com atguigu.mpdemo1010.mapper")

public class MpConfig (

//乐观锁插件

@Bean

public OptimisticLockerInterceptor optimisticLockerInterceptor(returnnewOptimisticLockerInterceptor0:

3.添加一个自动填充

@0verride

public void insertFill(Meta0bject meta0bject) {

this.setFieldValByName(fieldName:createTime',new Date,meta0bject);

this.setFieldValByName(fieldName:updateTime',new Date,meta0bject);

this.setFieldValByName(fieldName:"version",fieldVal:1,meta0bject);

注:使效果更加明显


二、演示效果

//添加操作

Test

public void addUser ()

User user = newUser0);

user.setName("东方不败");

user.setAge (60);

user.setEmail('lucy@qq-com'');

user. setCreateTime(new Date0);

user. setUpdateTime (new Date0);

int insert = userMapper.insert(user);

System.out.println(" insert:"+insert) ;

结果:

1231115382920916994 东方不败 60  

测试乐观锁

@Test

public void testOptimisticLocker()

//根据 id 查询数据

User user=userMapper.selectById(serializable:1231115382920916994L) ;//进行修改

user.setAge(200);

userMapper.updateById(user);

相关文章
|
前端开发 Java 关系型数据库
SpringBoot+MyBatis 天猫商城项目
SpringBoot+MyBatis 天猫商城项目
208 1
|
前端开发 Java Apache
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
2673 1
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
Java 数据库连接 mybatis
成功解决: Invalid bound statement (not found) 在已经使用mybatis的项目里引入mybatis-plus,结果不能共存的解决
这篇文章讨论了在已使用MyBatis的项目中引入MyBatis-Plus后出现的"Invalid bound statement (not found)"错误,并提供了解决方法,主要是通过修改yml配置文件来解决MyBatis和MyBatis-Plus共存时的冲突问题。
成功解决: Invalid bound statement (not found) 在已经使用mybatis的项目里引入mybatis-plus,结果不能共存的解决
|
前端开发 Java 数据库连接
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
本文是一份全面的表白墙/留言墙项目教程,使用SpringBoot + MyBatis技术栈和MySQL数据库开发,涵盖了项目前后端开发、数据库配置、代码实现和运行的详细步骤。
281 0
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
9、Mybatis-Plus 乐观锁
这篇文章介绍了Mybatis-Plus中乐观锁的实现和使用流程,包括使用场景、在实体类中添加版本号字段、配置乐观锁插件以及通过测试验证乐观锁的效果,确保在并发环境下数据的一致性。
9、Mybatis-Plus 乐观锁
|
Java 数据库连接 数据库
大事件后端项目05-----springboot整合mybatis
大事件后端项目05-----springboot整合mybatis
大事件后端项目05-----springboot整合mybatis
|
Java 关系型数据库 MySQL
1、Mybatis-Plus 创建SpringBoot项目
这篇文章是关于如何创建一个SpringBoot项目,包括在`pom.xml`文件中引入依赖、在`application.yml`文件中配置数据库连接,以及加入日志功能的详细步骤和示例代码。
|
SQL Java 数据库连接
springboot+mybatis+shiro项目中使用shiro实现登录用户的权限验证。权限表、角色表、用户表。从不同的表中收集用户的权限、
这篇文章介绍了在Spring Boot + MyBatis + Shiro项目中,如何使用Shiro框架实现登录用户的权限验证,包括用户、角色和权限表的设计,以及通过多个表查询来收集和验证用户权限的方法和代码实现。
springboot+mybatis+shiro项目中使用shiro实现登录用户的权限验证。权限表、角色表、用户表。从不同的表中收集用户的权限、
|
Java 数据库连接 Spring
搭建 spring boot + mybatis plus 项目框架并进行调试
搭建 spring boot + mybatis plus 项目框架并进行调试
379 4
|
Java 数据库连接 Maven
文本,使用SpringBoot工程创建一个Mybatis-plus项目,Mybatis-plus在编写数据层接口,用extends BaseMapper<User>继承实体类
文本,使用SpringBoot工程创建一个Mybatis-plus项目,Mybatis-plus在编写数据层接口,用extends BaseMapper<User>继承实体类