Mybatis 通用 Mapper 3.5.0 发布

Liuzh_533
 Liuzh_533
发布于 2018年01月09日
收藏 20

Mybatis 通用 Mapper 3.5.0 已发布。MyBatis 通用 Mapper 极其方便的使用 MyBatis 单表的增删改查,支持单表操作,不支持通用的多表联合查询。通用 Mapper 可以极大的方便开发人员。可以随意的按照自己的需要选择通用方法,还可以很方便的开发自己的通用方法。

通用 Mapper 更新日志

  • 兼容 mbg 1.3.6 版本。

  • EntityColumn 记录 EntityField 信息,方便后续扩展使用。

  • 针对 update 两个基本方法增加乐观锁功能,在实体类对版本字段增加 @Version 注解即可,默认支持 Integer 和 Long类型,其他情况可以实现 NextVersion 接口并在注解中指定该实现,一个实体类中最多只能有一个加 @Version 注解的字段。

  • 3.4.0增加的 useSimpleType 默认值改为 true,默认忽略复杂类型的字段,复杂类型不需要加 @Transient 注解,具体类型可以参考 SimpleTypeUtil 类。

  • 新增 annotationAsSimpleType 参数,默认 false,设置为 true 后会把枚举作为简单类型对待,需要配合 useSimpleType = true 使用。

  • 新增 wrapKeyword 参数,配置后会自动处理关键字,可以配的值和数据库有关,例如 sqlserver 可以配置为 [{0}],使用 {0} 替代原来的列名。

  • FieldHelper 改为判断当前jdk版本是否为6和7,其他情况按jdk8处理,因此支持jdk9+

  • 新增 selectOneByExample 方法,必须保证返回值最多 1 个,否则抛出异常。

  • 增加新的 tk.mybatis.mapper.additional.insert.InsertListMapper,这个批量插入方法不支持主键策略,不会返回自动生成的主键

使用 @Version 注解的效果如下:

DEBUG [main] - ==>  Preparing: UPDATE country 
SET countryname = ?,countrycode = ?,version = 2 
WHERE id = ? AND version = ? 

DEBUG [main] - ==> Parameters: 美国2(String), US(String), 174(Integer), 1(Integer)

自动处理关键字代码:

//自动处理关键字
if (StringUtil.isNotEmpty(wrapKeyword) 
	&& SqlReservedWords.containsWord(columnName)) {
    columnName = MessageFormat.format(wrapKeyword, columnName);
}

通用 Mapper - Starter 更新日志

通用 Mapper 对应的 mapper-boot-starter 也进行了大量改动。

  • 通用 Mapper 3.5.0

  • 去掉 mybatis-spring-boot-starter 依赖,不在使用 mybatis 官方 starter,使用通用 Mapper 时不要再引入官方 starter

  • 参考 mybatis 官方 starter 重新实现,解决 mapper 初始化可能存在的问题 pr#5 by fengcbo

  • 如果需要使用 @MapperScan 请选择 tk 开头的 tk.mybatis.spring.annotation.MapperScan

使用 Maven

3;font-family:"font-size:16px;background-color:#FFFFFF;">

<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper</artifactId>
    <version>3.5.0</version>
</dependency>

如果你使用 Spring Boot 可以直接引入:

<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>1.2.0</version>
</dependency>
本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Mybatis 通用 Mapper 3.5.0 发布
加载中

精彩评论

R
RYoui
可以,很方便

最新评论(4

firework_Dks
firework_Dks
好用!!
CodingNew
CodingNew
老牌,喜欢,支持,比较稳定
大连馋师
大连馋师
Mybatis 确实需要一个通用的Mapper
R
RYoui
可以,很方便
返回顶部
顶部