Skip to content

Releases: baomidou/mybatis-plus

v3.5.3.1

06 Jan 05:56
Compare
Choose a tag to compare

紧急修改 lambdaQuery()...One() 实体不存在导致的 BUG

v3.5.3

28 Dec 09:47
Compare
Choose a tag to compare

多租户插件:多表join表名必需起别名,否则追加的过滤条件不带前缀
InterceptorIgnore 不能过滤 selectKey 的问题
分页新增informix数据库支持
分页新增优炫数据库支持
分页新增TDengine数据库支持
分页新增亚马逊redshift数据库支持
支持spring-boot 2.7以上版本
雪花id新增反解时间戳方法Sequence#parseIdTimestamp
BaseMapper.selectCount生成语句加入中AS total
修复IllegalSQLInnerInterceptor类ClassCastException异常,并优化日志
移除注解OrderBy的过时属性isDesc
移除TableInfo过时方法
加入JoinTableInfoInitHandler类参与TableInfo初始化
修复StringUtils.sqlInjectionReplaceBlank方法过滤sql不全,可能会导致sql注入的情况
增加IService.lambdaQuery(entity)支持,写法更便捷
新增数据变更记录(数据审计)插件DataChangeRecorderInnerInterceptor
新增查询条件方法 notLikeLeft 和 notLikeRight
数据权限多表解析部分处理优化
允许子类重写 orderBy 基础方法 gitee issues/I61F51
新增Db类,调整 SimpleQuery 类
新增脚本自动维护功能
新增支持手动拦截器忽略策略,例如 InterceptorIgnoreHelper.handle(IgnoreStrategy.builder().tenantLine(true).build());
支持 PG 数据字段大写 ID 自增 fixed issues/I4T0YJ
代码生成器重构完成,合并回 MP 核心代码库
代码生成器增加是否生成service接口的开关

v3.5.1

25 Feb 09:08
bc3bc7f
Compare
Choose a tag to compare

新增 impala 数据库支
缓存动态获取数据库类型

新增可控分配 id 方法 fixed github pull/4231
延迟枚举扫描注册
乐观锁插件支持根据wrapper填充 github pull/3664
H2KeyGenerator 语法修改
SimpleQuery 优化及Bug修改
fixed gitee issues/I4P9EN
SybaseDialect 关键词替换优化

v3.4.3

20 May 18:24
Compare
Choose a tag to compare

增加瀚高数据库支持
增加注解 Order By 支持默认排序
Wrapper exists notExists orderBy groupBy 支持参数绑定
Wrapper 支持 setParamAlias 其它优化
优化 KeyGenerator 支持多实现多数据源注入
增强 ServiceImpl 泛型推断,解决多继承与代理问题
新增 PageDto 用于微服务对象传输序列化
新增 Page 提供静态 of 构造方式
增加代理 MethodHandleProxies 对 lambda 调试支持
调整 ActiveRecord 日志对象初始化
调整 ActiveRecord 模式 Model 类开发 pkVal 方法外部可用
删除标记过时代码
优化枚举值获取方式
分页 count 安全处理
Sequence 方法支持重写支持
升级 Mybatis 3.5.7
修复自动配置 lazy-initialization 无属性提示
修复 mysql on duplicate key update 字段名判断为表名问题
修复 lambda 条件 npe 异常
重构 lambda 信息提取方法
获取 lambda 信息不在序列化
合并 gitee pulls/ 141
fixed github issues/3208 3016
fixed github issues/3482 数据权限处理器支持 union all
调整事务未启用打印提示信息
单元测试优化相关依赖升级

v3.4.2

15 Jan 06:10
Compare
Choose a tag to compare

fix: 移除 BlockAttackInnerInterceptor 内引用的 commons 的 utils
feat: PaginationInnerInterceptor 添加 optimizeJoin 属性控制是否在count时对sql的join进行优化
feat: 可通过Resources.setDefaultClassLoader设置默认类加载器.
feat: InterceptorIgnore 注解新增 others 属性
feat: IService 增加 kotlin 链式调用支持(ktQuery() 和 ktUpdate())
style: jsqlparser up to 4.0
style: 移除 com.baomidou.mybatisplus.extension.injector.methods.additional 包下的过时类
style: generator 模块另开仓库 generator

v3.4.1

11 Nov 06:23
Compare
Choose a tag to compare

feat: 公开 AbstractWrapper.getEntityClass
fix: 新多租户插件完善子查询,支持 比较符号,in,EXISTS,NOT EXISTS
feat: 新增 FakeTenantLineInnerInterceptor 对 TenantSqlParser 进行过度
feat: 分页count识别 left join (subSelect) 优化
feat: 所有 count 从 count(1) 变更为 count(*)
feat: mybatis up to 3.5.6

v3.4.0

25 Aug 08:46
Compare
Choose a tag to compare

fix: @TableName.autoResultMap=true 情况下, 内置的 selectBody 将不会进行 as ,使用了的需要注意!!!
feat: 新增 mybatis-plus-boot-starter-test 模块
fix: MetaObjectHandler 重载错误(解决办法是参数位置对调),填充值在泛型上支持字段类型的子类
feat: mybatis up to 3.5.5, mybatis-spring up to 2.0.5
feat: jsqlparser up to 3.2
feat: 新增 MybatisParameterHandler, 废弃 MybatisDefaultParameterHandler
feat: 分页插件加入 GBase,ClickHouse,oscar,OceanBase 数据库连接自动识别的支持
feat: Wrapper 新增api not(boolean condition, Consumer consumer)
feat: 新增 MybatisPlusInterceptor 解决 多租户和分页 插件一级和二级缓存不正确问题
feat: 新分页插件优化 size<0 时继续拼接 orderBy
feat: 新增 IdentifierGenerator 一个实现类 ImadcnIdentifierGenerator
fix: chainWrapper#func 强转异常
fix(mybatis-plus-generator.main): 重构生成器数据库类型转换器,修复部分支条,提交选择器测试
fix: 修复复杂情况中动态表名替换产生的问题:正则由空白检测转为单词边界检测
refactor: 重构动态表名解析器,去除正则替换程序,改为按表名位置进行替换
refactor: 将表名解析重构为访问者模式,现在不会对原有 SQL 做改动

v3.3.2

25 May 17:50
Compare
Choose a tag to compare
  • 分页参数提取,单元测试用例修复
  • 达梦数据库代码生成器表过滤支持
  • 微软数据库代码生成器表过滤支持
  • 修复代码生成器属性字段规则错误
  • SelectById 支持自定义方法名
  • 修复分页插件获取数据库类型问题
  • Json转换器空值处理
  • bugfix(mybatis-plus-generator):SQL类型返回错误问题
  • 调整未知方言异常,自动识别url转换小写匹配.
  • fix: 初始化 TableInfo 中遇到多个字段有 @TableId 注解时未能抛出异常的问题
  • SuperController有Class参数的set方法
  • 增加方法StrategyConfig.setSuperServiceImplClass(java.lang.Class<?>).
  • 代码生成器命名策略调整.
  • 扩展分页缓存key值计算.
  • 去除方法推测,直接访问属性字段.
  • 修正枚举处理器类型不匹配比较.
  • 修改表前缀匹配方式
  • 修改在Mybatis全局配置文件中设置分页插件参数不生效问题
  • 修改在Mybatis全局配置文件中设置分页插件参数不生效问
  • 修复PR未指定解析器的时候引发空指针
  • 增加分页插件limit参数配置
  • 修复指定superEntityClass重复生成父类字段问题
  • 无主键的情况无需导入IdType与TableId包
  • 调整生成BaseResultMap格式
  • 支持lombok模式下选择是否进行链式set生成
  • 修复解析器for update错误
  • 过滤PG约束列(只留下主键约束)
  • 增加生成器禁用模板生成
  • fix(kotlin): 修复动态表名 BUG,最大努力替换表名
  • 修复PG约束生成重复属性字段问题
  • fix(kotlin): 将 LambdaUtils 中缓存的 key 改为 String
  • 代码生成器增加数据库关键字处理接口
  • fix github/issues/2454 支持注解可继承
  • 新增 AES 加密数据库用户名密码
  • 优化方法入参泛型,支持更多类型
  • 修复代码生成器开启移除is前缀生成实体缺少包导入
  • fixed github issues/2470

v3.3.1.tmp

27 Jan 11:08
Compare
Choose a tag to compare

解决仓库未能成功同步3.3.1.

v3.3.1

17 Jan 10:09
Compare
Choose a tag to compare
  • 新增TableName注解属性excludeProperty支持排除字段
  • 新增ServiceImpl#entityClass属性,减少泛型提取
  • 新增phoenix支持
  • 新增支持hbase的选装件Upsert
  • 新增生成器策略配置enableSqlFilter属性来控制是否启用SQL过滤表支持
  • 新增批量执行方法,方便用户自定义批量执行操作
  • Wrapper支持clear清空
  • Wrapper子类新增func方法,主要为了支持在if else情况下使用Wrapper的不同method不会导致断链(链式调用不能一链到底)
  • BaseMapper部分入参为Wrapper的select方法支持wrapper.first来设置RDS的hint
  • KtUpdateWrapper#set支持value为null
  • 支持泛型主键支持
  • 优化分页拦截器数据类型与方言实现类配置
  • 二级缓存复用count查询缓存
  • IService部分method调整为default方法
  • 二级缓存兼容json序列化情况(主要出现默认缓存count出现long反序列化回来为int的情况)
  • 处理批量操作嵌套事物问题(二级缓存更新问题)
  • 修复启用乐观锁下updateById时自动填充不生效的问题
  • 修复自动填充接口的default方法(setFieldValByNamegetFieldValByName)某些情况下会发生异常的问题
  • 修复KtWrapper嵌套函数问题
  • 修复Freemarker生成Kotlin类的常量错误
  • 修复StringUtils#guessGetterName错误
  • 修复SerializationUtils资源未释放问题