Skip to content

Releases: baomidou/mybatis-plus

日常发版

06 Dec 02:05
Compare
Choose a tag to compare

BaseMapper 接口两个 page 方法优化
IService 以及 ServiceImpl 对应 page 方法优化,个别返回 collection 的方法修改为返回 list
逻辑删除字段的两个表示已删除和未删除的定义支持字符串 "null"
修复批量操作未清空缓存
批量操作异常转换为DataAccessException
mybatis up 3.5.3, mybatis-spring up 2.0.3, jsqlparser up 3.1
mapper 选装件包调整, chainWrapper 包调整
新增 ChainWrappers 工具类
新增 IdentifierGenerator 接口,支持自定义Id生成
代码生成工具废弃正则表名匹配,新增likeTable与notLikeTable
分页插件支持自定义处理页数限制与溢出总页数处理
修复SqlExplainInterceptor导致的Oracle序列自增两次
分页二级缓存支持
扩展p6spy日志打印
DbConfig加入新属性propertyFormat,TableFieldInfo移除属性related
优化序列生成器,过时KeySequence的clazz属性
修复Ognl表达式关键字导致的null值判断失效
修复更新填充开关失效
优化填充逻辑
ISqlRunner支持selectPage
支持全局逻辑删除字段
BaseMapper的方法可自定义
添加【虚谷】【Oracle12c】【Kingbase】数据库支持
解决数据库字段与实体字段名称不同时出现null as xxx的情况
过时ID_WORKER_STR,自动识别主键类型
配置开启注解,TableName也强制生成

v3.2.0

26 Aug 04:35
Compare
Choose a tag to compare

代码生成器添加达梦数据库支持
修复多主键查询表字段SQL的Bug
新增 updateWrapper 尝试更新,否继续执行saveOrUpdate(T)方法
代码生成器 pg 增加 numeric instant 类型支持
修复InjectionConfig不存在时无法生成代码的问题
fix: #1386(github) 逻辑删除字段为Date类型并且非删除数据日期为null
升级依赖 mybatis 版本为 3.5.2
升级依赖 jsqlparser 版本为 2.1
应 EasyScheduler 计划提交 Apache 孵化请求移除 996NPL 协议限制
调整 SQL 移除 SET 部分 Github/1460
移除 SqlMethod 枚举 UPDATE_ALL_COLUMN_BY_ID 属性,推荐使用 AlwaysUpdateSomeColumnById 套
fix: #1412(github) github:mybatis-plus-generator can't support oracle
fix: github 1380
移除全局配置的 dbType 和 columnLike
移除 fieldStrategy, 使用上个版本新增的三个替代
移除 PerformanceInterceptor 相关, 建议使用 p6spy
移除 el 拆分为 jdbcType typeHandler 等具体属性
升级 gradle-5.5.1,lombok-1.18.4
当selectStatement.getSelectBody()的类型为SetOperationList
移除 GlobalConfig#sqlParserCache 属性,移除 LogicSqlInjector, OrderItem 新增2个快捷生成的method, page 新增一个入参是 List 的 addOrder method
Nested 接口个别入参是 Function<Param, Param> func 的method,入参更改为 Consumer consumer,不影响规范的使用
fixed gitee/I10XWC 允许根据 TableField 信息判断自定义类型
Merge pull request #1445 from kana112233/3.0
支持过滤父类属性功能
添加批量异常捕获测试
多租户ID 值表达式,支持多个 ID 条件查询
扩展新增 json 类型处理器 jackson fastjson 两种实现

v3.1.2

04 Jul 04:57
9c4db98
Compare
Choose a tag to compare

EnumTypeHandler 更名为 MybatisEnumTypeHandler,移除 EnumAnnotationTypeHandler
新增自动构建 resultMap 功能,去除转义符
注解增加变量控制是否自动生成resultmap
修改分页缓存Key值错误
TableField.el 属性标记过时
取消 MybatisMapWrapperFactory 的自动注册
starter 增加默认xml路径扫描
新增 MybatisPlusPropertiesCustomizer 及配置使用
ConfigurationCustomizer 内部方法入参更新为 MybatisConfiguration
原有 fieldStrategy 标记过时,新增 3 种 fieldStrategy 进行区分
获取注入方法时传递当前mapperClass
增加sqlite代码自动生成测试代码及测试用的数据库文件
JsqlParserCountOptimize 对 left join 的 sql 优化 count 更精确
fix(AbstractWrapper.java): 修复 lambda 表达式在 order、groupBy 只有条件一个时引起的类型推断错误
apply plugin: 'kotlin'
refactor(order): 修复排序字段优先级问题(#IX1QO)
启动就缓存 lambdacache
Merge pull request #1213 from sandynz/feature/sqlComment 支持SQL注释
去除 wrapper 的一些变量,wrapper 内部 string 传递优化
fix: #1160(github) 分页组件orderBy: 同时存在group by 和order by,且IPage 参数中存在排序属性时,拼接
Merge pull request #1253 from ShammgodYoung/patch-1 代码生成器输入表名忽略大小写
新增渲染对象 MAP 信息预处理注入
修改 dts rabbitAdmin bean 判断方式
Merge pull request #1255 from ShammgodYoung/patch-2 对serialVersionUID属性进行缩进
JsqlParserCountOptimize 加入 boolean 字段,判断是否优化 join
Merge pull request #1256 from baomidou/master Master
freemarker entity 模板缩进调整
增加jdbcType,typeHandler属性, 合并el属性

v2.1.5

15 Nov 03:11
Compare
Choose a tag to compare
升级 2.1.5 新增升级日志

v2.0.8

15 May 03:02
Compare
Choose a tag to compare

Wrapper添加设置对象sqlSelect

兼容无注解情况

乐观锁去除默认short实现,优化绑定注册器在扫描阶段绑定. 测试改为h2环境.

优化热加载,去除mapper路径配置.

减少刷新Mapper配置

修复tableFiled value 为空情况,开启下划线命名

sequence 升级提示

开放表信息、预留子类重写

修改Idwork测试

支持 devtools

fixed 259 支持 xml resultMap 公共字段生成

fixed pulls 28 支持属性重载

v2.0.1

13 Feb 03:29
Compare
Choose a tag to compare

1.解决EntityWrapper对布尔类型构造sql语句错误
2.全局配置初始化日志提示调整
3.Mybatis依赖升级至3.4.2,Mybatis-Spring依赖升级至1.3.1
4.Service中补充方法(selectObjs,selectMaps)
5.解决selectCount数据库返回null报错问题
6.支持PostgreSql代码生成
7.拓展支持外部提供转义字符以及关键字列表
8.开放数据库表无主键依然注入MP的CRUD(无主键不能使用MP的xxById方法)
9.解决EntityWrapper拼接SQL时,首次调用OR方法不起作用的问题
10.sqlServer代码生成(基于2008版本)
11.解决生成代码时未导入BigDecimal问题.
12.释放自动读取数据库时的数据库连接
13.优化全局校验机制(机制为EMPTY增加忽略Date类型)
14.优化注入,避免扫描到BaseMapper
15.优化注入,去除多余注入方法
16.SQLlikeType改名为SqlLike
17.解决热加载关联查询错误问题
18.SqlQuery改名为SqlRunner
19.优化完善代码生成器
20.修复代码生成器未导入@tableName
21.全局配置需要手动添加MP的默认注入类,更改为自动注入简化配置
22.Wrapper增加ne方法
23.修复Mybatis动态参数无法生成totalCount问题
24.代码结构优化,生成器模板优化
25.解决issus[138,140,142,148,151,152,153,156,157],具体请查看里程碑mybatis-plus 2.0.1 计划中所有issus

v2.0

13 Feb 04:11
Compare
Choose a tag to compare

1.支持全局大写命名策略
2.自动分页Count语句优化
3.优化现有全局配置策略
4.优化全局验证策略
5.优化代码生成器(之前硬编码,现使用模板形式)
6.优化注入通用方法ByMap逻辑
7.添加自动选择数据库类型
8.改善SqlExplainInterceptor(自行判断MySQL版本不支持该拦截器则直接放行(版本过低小于5.6.3))
9.修复部分特殊字符字符多次转义的问题
10.优化现有EntityWrapper添加Wrapper父类以及Condition链式查询
11.Wrapper类使LIKE方法兼容多种数据库
12.优化日志使用原生Mybatis自带的日志输出提示信息
13.修复使用缓存导致使用分页无法计算Count值
14.修复PerformanceInterceptor替换?导致打印SQL不准确问题,并添加格式化SQL选项
15.添加多种数据库支持,请查看DBType
16.添加字符串类型字段非空校验策略(字符串类型自动判断非空以及非空字符串)
17.Wrapper添加类似QBC查询(eq、gt、lt等等)
18.支持AR模式(需继承Model)
19.合并所有Selective通用方法(例如:去除之前的insert方法并把之前的insetSelective改名为insert)
20.解决sql剥离器会去除--的情况
21.支持MySQL关键词,自动转义
22.精简底层Service、Mapper继承结构
23.不喜欢在XML中写SQL的福音,新增执行SQL方式,具体请查看SqlQuery
24.优化代码结构
25.解决issus[95,96,98,100,103,104,108,114,119,121,123,124,125,126,127,128,131,133,134,135],具体请查看里程碑mybatis-plus 2.0 计划中所有issus

v1.4.9

11 Nov 08:21
Compare
Choose a tag to compare

1、ServiceImpl去除@transactional注解、去除Slf4j依赖
2、解决使用EntityWrapper查询时,参数为特殊字符时,存在sql注入问题
3、调整Mybatis驼峰配置顺序 MybatisPlus > Mybatis
4、优化分页插件并修复分页溢出设置不起作用问题
5、去除DBKeywordsProcessor,添加MySQL自动转义关键词
6、代码生成器新增支持TEXT、TIME、TIMESTAMP类型生成
7、新增批量插入方法
8、代码生成器新增Controller层代码生成
9、调整EntityWrapper类部分List入参为Collection 10、代码生成器优化支持 resultMap

v1.4.8

12 Oct 10:02
Compare
Choose a tag to compare

1、insertOrUpdate增加空字符串判断
2、支持原生驼峰配置 mapUnderscoreToCamelCase 开关设置
3、支持 TableField FieldStrategy 注解全局配置
4、SelectOne、SelectCount支持EntityWrapper
5、oracle 代码生成器支持 Integer Long Dobule 类型区分
6、优化INPUT主键策略InsertOrUpdate
7、EntityWrapper IN添加Object数组支持
8、基础Mapper、Servcie通用方法PK参数类型更改至Serializable
9、selectOne结果集不唯一时,添加警告提示
10、修改logger修饰符

v1.4.7

10 Oct 15:26
Compare
Choose a tag to compare
  • 主键注解 I 改为 PK 方便理解,去掉 mapper 注解
  • 性能分析插件,特殊处理 $ 符内容
  • 添加自动提交事务说明,新增事务测试
  • 支持 resultMap 实体结果集映射
  • 增加#TableField(el = "")表达式,当该Field为对象时, 可使用#{对象.属性}来映射到数据表、及测试
  • 新增 typeHanler 级联查询支持
  • 新增验证字段策略枚举类
  • 代码生成器支持实体构建者模型设置
  • 代码生成器新增实体常量生成支持
  • CRUD 新增 insertOrUpdate 方法
  • 解决MessageFormat.format格式化数字类型sql错误
  • 添加EXISTS IN支持
  • 支持 mysql5.7+ json enum 类型,代码生成
  • 支持无 xml 自动 curd
  • 完善原生加载顺序
  • 完善EntityWrapper(感谢D.Yang提出的BETWEEN AND),其他