是一款 Mybatis 动态 SQL 自动注入 Mybatis 增删改查 CRUD 操作中间件, 减少你的开发周期优化动态维护 XML 实体字段,无入侵全方位 ORM 辅助层让您拥有更多时间吃鸡、陪家人、陪朋友。
致谢
感谢 、 、 ( 新生血液,女装大佬 - 豪言 MP + star > 1 w 放出女装,各位看你们的了)经过几个月的努力适配、不停的 BUG CLOSED 及测试。
更新日志
- 升级
mybatis
到3.5.0
版本 - 升级
mybatis-spring
到2.0.0
版本 - 升级
jsqlparser
到1.4
版本 - 新增 p6spy 日志打印支持
- 变更
IService
的getOne(Wrapper<T> queryWrapper)
方法如果获取到多条数据将会抛出TooManyResultsException
异常 - 修复 自定义分页功能不支持注解
@select
问题 - 修复 生成器的配置 kotlin 模式下 swagger 模式无效问题
- 修复 生成器 is 开头字段无法自动注解问题
- 修复 生成器 Serializable Active 模式继承父类包自动导入异常问题
- 修复 生成器 支持公共字段自动读取父类 class 属性问题
- 修复
generator
的 kotlin 模式下 swagger 模式无效问题 - 修复 枚举(注解方式)转换器在存储过程中转换失败
- 修复 beetl 模板逻辑删除注解错误问题
- 修复 通过
mybatis-config.xml
方式构建的Configuration
的mapUnderscoreToCamelCase
默认值非true
的问题 - 修复 sql解析器动态代理引发的bug
- 修复
mapper
使用纯注解下可能触发的重试机制在个别情况下启动报错的问题 - 优化 支持指定
defaultEnumTypeHandler
来进行通用枚举处理 - 优化 从 hibernate copy 最新代码到 SqlFormatter
- 移除
wrapper
的in
以及notIn
方法内部对入参coll
及动态数组
的非empty判断
注意: 如果以前有直接使用以上的方法的入参可能为 empty 的现在会产出如下sql:
in ()
或not in ()
导致报错
- 移除
wrapper
的notInOrThrow
和inOrThrow
方法,使用新版的in
以及notIn
效果一样,异常则为sql异常 - 移除
IService
的query
链式调用的delete
操作 - 移除 xml 热加载相关配置项,只保留
MybatisMapperRefresh
该类并打上过时标志 - 日常优化