MyBatis-Plus雪花算法实现源码解析 1. 雪花算法(Snowflake Algorithm) 雪花算法(Snowflake Algorithm)是一种用于生成唯一标识符(ID)的分布式算法。最初由 Twitter 公司开发,用于生成其内部分布式系统中的唯一ID。雪花算法的设计目标是在分布式系统中生成全局唯一的ID,同时保证ID的有序性和趋势递增。 雪花算法生成的ID...
一、实现MyBatis ID构建接口 @Slf4j @Component public class CustomIdGenerator implements IdentifierGenerator { @Override public Long nextId(Object entity) { //生成ID long id = SnowFlakeUtils.nextId(); log.info("生成ID: " + id); return id; } } 二、雪花ID生成工具类 @Slf4j public class S...
SpringBoot方式二:通过MybatisPlusPropertiesCustomizer自定义 @Bean public MybatisPlusPropertiesCustomizer plusPropertiesCustomizer() { return plusProperties -> plusProperties.getGlobalConfig().getDbConfig().setKeyGenerator(new H2KeyGenerator()); } mybatis plus之自动填充字段功能个人比较喜欢这个功能,尤其是用于...
mybatis-plus.global-config.worker-id: ${random.int(1,31)} 1. 2. 这个时候我们先看一下我们设置参数有没有生效,为了比较明显看到效果,我们直接设置worker-id为一个固定值20,再断点看一下,我们找到com.baomidou.mybatisplus.core.toolkit.IdWorker这个核心类,获取id的核心方法是com.baomidou.mybatisplus.core...
java mybatis 实现批量插入 主键id是雪花算法生成的 mybatis plus 批量新增,批量新增/删除1.代码中foreachinsert/update2.多线程foreachinsert/update3.mybatisxml中foreach4.通过自定义SQL注入器扩展自定义SQL注入器失效问题notnull问题现工作中有需求要进行批量新增和修