2.0.0 发布 - 2022-07-31
- mybatis-provider 升级为 2.1.1,同时引入了 mybatis-config 依赖,增加 mybatis-mapper.proerteis 用户自定义配置
- ExampleWrapper condition 系列方法新增 Supplier 重载 #47 by darren
- 更新代码生成器,解决
NAME=>nAME
错误,现在可以转换为name
- example / wrapper 新增字符串形式的排序方法重载 #34 by darren
- 修复 jpa 模块 获取 Entity 类型错误的问题(排除了基本类型) #41 by darren
- 完善和Spring的集成,完善Bean的初始化和加载,fixed #51
- 针对 mybatis-provider 中 @Entity.Prop 注解的兼容性改动
- 添加 bom 子模块,管理 mybatis-mapper 中所有子模块的依赖 #45(** by zhousiwei**),可以使用下面的方式管理依赖:
<dependencyManagement> <dependencies> <dependency> <groupId>io.mybatis</groupId> <artifactId>mapper-bom</artifactId> <version>2.0.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
mybatis-provider 升级到 2.1.1 版本
mapper 依赖 provider,provider 2.1.1 版本有大量改动对 mapper 也有影响,具体改动参考对应的版本日志:
mybatis-mapper.proerteis 用户自定义配置
关于配置的详细设计和实现,参考: https://blog.csdn.net/isea533/category_11904924.html
目前可配置的参数如下:
mybatis.provider.style
,默认值为lower_underscore
,可选值如下:- normal 不做转换
- lower_underscore 驼峰转下划线
- upper_underscore 驼峰转大写下划线
- lower 转小写
- upper 转大写
支持扩展,详情看 mybatis-provider 项目
支持下面 3 个参数:
@Entity.Table(value = "user",
props = {
@Entity.Prop(name = "deleteByExample.allowEmpty", value = "false"),
@Entity.Prop(name = "updateByExample.allowEmpty", value = "false"),
@Entity.Prop(name = "updateByExampleSelective.allowEmpty", value = "false")
}
)
上面代码可以针对单个实体进行配置,也可以在配置文件中配置全局的默认配置。
除了直接在用户自定义配置文件中配置外,也支持系统变量和环境变量,使用 Spring Boot 时,也支持 Spring Boot 的所有外部化配置方式,支持在 application.[yaml|properties] 中配置,例如 yaml 方式:
mybatis:
provider:
style: lower_underscore
deleteByExample:
allowEmpty: false
updateByExample:
allowEmpty: false
updateByExampleSelective:
allowEmpty: false
# 还可以使用 spring boot 推荐的形式
update-by-example-selective:
allow-empty: false