Skip to content

Releases: baomidou/mybatis-plus

v3.5.16

11 Jan 11:27

Choose a tag to compare

  • fix: 修复Jackson3TypeHandler自定义ObjectMapper无效
  • fix: 处理代码生成器PackageConfig指定模块为空时拼接错误
  • fix: 修复配置加密无法在环境变量中使用
  • feat: 升级SpringBoot3至3.5.9
  • feat: 升级JUnit单元测试
  • feat: 升级fastjson至2.0.60
  • feat: 升级jackson至2.20.1
  • feat: 升级gson至2.13.2
  • feat: 升级postgresql至42.7.8
  • feat: 升级h2database至2.4.240
  • feat: 升级mysql-connector-j至9.5.0
  • feat: 升级sqlite-jdbc至3.51.1.0
  • feat: 升级jaybird至5.0.10.java8
  • feat: 升级mybatis-spring4.0.0

v3.5.15

30 Nov 16:07

Choose a tag to compare

  • fix: 修复Enjoy模板生成xml错误
  • feat: 调整代码生成器元数据构建
  • feat: 优化CrudRepository批量执行前判断非事务中关闭连接
  • feat: 支持SpringBoot4.0.0
  • feat: 支持Jackson3.0

v3.5.14

29 Aug 01:32

Choose a tag to compare

  • feat: 增加bommybatis-plus-spring-boot4-startermybatis-plus-spring-boot4-starter-test管理

v3.5.13

28 Aug 16:29

Choose a tag to compare

  • fix: 修复在Spring中使用@PostConstruct调用Db方法查询出现警告日志
  • fix: 修复Db使用count返回null导致的空指针异常
  • fix: 修复BaseMapper在非Spring项目中报错
  • feat: 升级Jsqlparser5.2
  • feat: OrderItem增加withExpression根据表达式排序(注意:不支持序列化方式使用,自行控制sql注入)
  • feat: OracleDdlGenerator支持指定schema模式运行
  • feat: 适配华为云GaussDb数据库
  • feat: 雪花生成器初始化错误增加降级处理
  • feat: 新增spring-boot4支持
  • feat: 升级gradle8.13
  • opt: SqlUtilsreplaceSqlPlaceholder方法增加缓存处理
  • opt:优化DDL执行记录表检查是否存在
  • opt: 容器环境下workerId获取优化

v3.5.12

27 Apr 15:35

Choose a tag to compare

  • fix: 修复批量操作异步执行首次可能的出现NoSuchElementException错误
  • fix: 修复默认SQL解析线程池在JVM退出关闭导致的任务拒绝
  • fix: 修复entity.java.btl生成toString方法样式错误
  • fix: 修复entity.java.ftl模板类注释与导包缺少换行
  • opt: 重构SqlRunner执行SQL语句 (动态传参,不再根据参数值生成执行SQL)
  • opt: 增强SqlRunner执行(支持单参数使用Map({key}),List({index}),JavaBean({property})获取值)
  • opt: 改进MybatisUtils对自SqlSessionFactory的提取(支持自定义SqlSessionTemplate子类)
  • opt: 自动识别数据库支持TDengine数据库websocket连接
  • opt: 支持Db工具类对多数据源的支持
  • opt: 优化MapperProxy属性访问
  • opt: CompatibleSet接口增加getBeangetProxyTargetObject方法
  • opt: CompatibleSetCompatibleHelper调整至com.baomidou.mybatisplus.core.spi包之中
  • opt: 支持手动指定CompatibleSet实现
  • opt: 代码生成器处理驱动返回索引信息null
  • opt: 代码生成器处理PRIMARY_KEY_为开头的主键索引情况
  • opt: 去除entity.kt.btl模板@Override注解
  • opt: 解决serviceImpl.java.ej生成格式不统一
  • opt: 去除mapper.java.ftl多余的换行生成
  • opt: 去除entity.kt.vm,entity.kt.ej,entity.kt.btl导包结束分隔符
  • opt: 去除controller.java.ej,controller.java.vm多余的换行
  • opt: 去除entity.kt.btl生成属性多余的空格
  • opt: 统一entity.java.btl,entity.java.ej,entity.java.ftl,entity.java.vm 生成的toString方法样式

v3.5.11

23 Mar 15:16

Choose a tag to compare

  • fix: 修复代码生成器链式模型非lombok下生成了@Accessors注解
  • fix: 修复主键使用UUID执行批量删除错
  • fix: 修复Kotlin使用select(predicate)方法错误
  • fix: 修复AbstractCaffeineJsqlParseCache异步产生的错误
  • fix: 修复动态SQL解析包含SQL注释(--或#)导致的合并错误 (动态脚本语句不再处理换行,如果需要去除换行请自行处理)
  • fix: 修复DataChangeRecorderInnerInterceptor数据比较出现强转异常
  • fix: 修复IllegalSQLInnerInterceptor拦截插件获取catalogschema错误
  • fix: 修复动态表解析create table if not exists 获取表名错误
  • fix: 修复动态表解析create [type] index 获取表名错误
  • feat: 新增DynamicTableNameJsqlParserInnerInterceptor 基于JsqlParser动态表处理
  • feat: 支持DdlScript自定义脚本运行器参数
  • feat: 支持DdlHelper自定义脚本运行器参数
  • feat: 支持DdlApplicationRunner参数配置(脚本错误处理,自定义ScriptRunner,多处理器执行异常是否中断)
  • feat: 支持BaseMultiTableInnerInterceptor指定追加条件模式 (默认条件追加至末尾,仅作用于select,delete,update)
  • feat: 支持生成器Entity指定serialVersionUID添加@Serial注解
  • feat: 支持生成器Entity注解(字段,类注解)自定义处理
  • feat: 支持生成器Entity导包自定义处理
  • feat: 支持崖山数据库
  • feat: 支持Hive2分页
  • feat: 升级Gradle至8.10
  • feat: 支持DdlHelper执行自定义异常处理
  • opt: 调整DynamicTableNameInnerInterceptor表处理逻辑并保证hook运行
  • opt: 调整DdlScript类方法实现(分离DDL版本记录,优化执行方法)
  • opt: 调整DbType#GAUSS数据库名为gauss
  • opt: 调整JsqlParserGlobal解析线程池指定
  • opt: 移除过时的FieldStrategy.IGNORED
  • opt: 移除过时的GlobalConfig.DbConfig#selectStrategy
  • opt: 移除过时的MybatisSqlSessionFactoryBean#typeEnumsPackage
  • opt: 优化DdlHelper资源加载(不再依赖Spring或者其他实现)
  • opt: 去除DdlHelpergetScriptRunner方法指定的字符集编码
  • doc: 修正DdlHelper中注释错误

由于jsqlParser5.0版本与5.1版本升级不兼容性不是很大,计划后期移除mybatis-plus-jsqlparser-5.0支持模块。
多版本支持相对来说比较麻烦,后期只维护mybatis-plus-jsqlparser-4.9mybatis-plus-jsqlparser(保持最新版跟进,直到再提升jdk)

v3.5.10.1

13 Jan 15:06

Choose a tag to compare

  • fix: 修复动态节点处理错误

v3.5.10

12 Jan 13:28

Choose a tag to compare

  • fix: 修复字段有TableField注解但未指定value值下全局columnFormat未生效问题
  • fix: 修复enjoy模板生成kotlin代码报错
  • fix: 修复enjoy模板生成字符串代码报错
  • fix: 修复springdoc生成注解未转义双引号
  • fix: 修复数据变动插件更新无主键报错
  • fix: 修复多表解析processJoins解析表出现越界
  • feat: TableName注解新增properties属性
  • feat: 支持@InterceptorIgnore注解在default方法上
  • feat: 适配jsqlparser5.1版本(5.0兼容版本请使用mybatis-plus-jsqlparser-5.0)
  • feat: 提供InterceptorIgnoreHelper.execute模板执行方法处理插件跳过策略(防止手动使用handle方法出现未清理线程资源造成的错误)
  • feat: 代码生成器全局package配置属性支持自定义模板信息获取
  • feat: 代码生成器新增表索引信息获取
  • feat: 代码生成器提供Mapper.Builder.generateMapperMethodHandler处理器基于索引生成索引方法
  • feat: 代码生成器Entity支持自定义Class注解和字段注解生成
  • feat: 代码生成器Entity支持lombok模式指定生成类注解
  • feat: 代码生成器Entity支持ToString(Entity.Builder.toString(boolean))方法控制生成 (默认生成,lombok模式下将会生成@ToString,低版本下lombok不生成,属于不兼容改动)
  • feat: 代码生成器Entity支持字段文档注释(Entity.Builder.fieldUseJavaDoc(boolean))控制生成 (默认生成,低版本下,使用swagger或springdoc不会生成字段文档注释,属于不兼容改动)
  • feat: 重写动态语句生成(生成执行SQL将不再包含\n换行符)
  • feat: 安全加密处理器密钥获取支持环境变量与系统属性传入
  • feat: 升级mybatis至3.5.19
  • feat: 升级springboot至3.4.1
  • feat: 升级kotlin至2.1.0
  • 实用性低,检查语法不完善,计划移除IllegalSQLInnerInterceptor插件
  • 功能缺陷较多,计划移除DataChangeRecorderInnerInterceptor插件

v3.5.9

23 Oct 15:08

Choose a tag to compare

  • opt: 优化代码生成器支持可视化配置生成能力
  • opt: 解耦扩展包不再强制依赖 spring 开发框架
  • opt: 拆分jsqlparser支持模块,提供mybatis-plus-jsqlparser(支持最新jsqlparser)与mybatis-plus-jsqlparser-4.9模块, 默认不携带,升级后需要自行引入.
  • feat: 重构 service 模块抽象为 CrudRepository 不再建议使用 IService 避免业务层数据混乱
  • feat: 新增 solon 启动插件支持
  • feat: 升级SpringBoot3.3.4
  • feat: 升级velocity2.4

v3.5.8

18 Sep 14:31

Choose a tag to compare

  • fix: 解决optimizeJoinOfCountSql反序列化不支持问题
  • fix: 解决Db工具类批量操作使用rewriteBatchedStatements=true返回值不准确
  • fix: 修复逻辑删除填充与乐观锁冲突
  • fix: 修复IllegalSQLInnerInterceptor分析嵌套count语句错误
  • fix: 升级jsqlParser5.0 解决 for update 语句错误
  • fix: 修复处自增自减负数情况导致jsqlParser解析优化错误
  • fix: 修复removeMapper缓存清理不完全
  • fix: 修复SqlServerQuery查询表注释乱码
  • opt: 完善函数注入校验逻辑
  • opt: Page属性访问调整为private,重写toString方法
  • opt: 主键生成策略(uuid)不支持的类型打印警告日志
  • opt: MybatisPlusException转化为PersistenceException子类
  • feat: 增加deleteByIds空集合处理
  • feat: 重命名selectBatchIds方法为selectByIds
  • feat: 支持tableName与schema属性占位符配
  • feat: 代码生成器增加对虚拟列的属性获取
  • feat: chain wrapper to lambda chain wrapper #6314
  • feat: 代码生成器增加手动指定数据库驱动兼容不能自动注册的驱动实现
  • feat: 升级kotlin2.0.0
  • feat: 升级SpringBoot3.3.2
  • feat: 升级fastjson2.0.52
  • feat: 升级mybatis-spring3.0.4
  • feat: 升级spring-cloud-commons4.1.4
  • feat: 部分支持依赖升级更新
  • feat: 支持GoldenDB数据库
  • feat: 支持Duckdb数据库
  • feat: 支持Derby数据库
  • feat: 支持Vastbase数据库