本文共 1020 字,大约阅读时间需要 3 分钟。
1、主键策略
在数据库设计中,主键策略是保证数据唯一性的核心机制。为实现高效的数据管理,MyBatis-Plus提供了主键自增的功能:
@TableId(value = "id",type = IdType.AUTO) // 设置主键自增 这里需要注意,设置主键自增时,数据库和Java字段都需要配置为自增。
官网:
2、乐观锁插件
乐观锁是一种通过版本号控制并发事务的优化机制,避免并发更新冲突。其工作原理如下:
乐观锁:1、先查询,获得版本号 version = 1 -- A update user set name = "hekun", version = version + 1 where id = 2 and version = 1 -- B 线程抢先完成,这个时候 version = 2,会导致 A 修改失败! update user set name = "hekun", version = version + 1 where id = 2 and version = 1
version类型是int类型,并且不为空
@Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); return interceptor; } @Version private Integer version;
官网:
3、逻辑删除
MyBatis-Plus 提供了基于字段值的逻辑删除功能,配置简单即可使用:
mybatis-plus: global-config: db-config: logic-delete-field: flag # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2) logic-delete-value: 1 # 逻辑已删除值(默认为 1) logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
官网:
转载地址:http://gyffk.baihongyu.com/