1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 Mybatis 通用 Mapper 3.5.0 发布 下载

Discussion in '软件资讯' started by 漂亮的石头, 2018-01-09.

  1. 漂亮的石头

    漂亮的石头 版主 Staff Member

    Joined:
    2012-02-10
    Messages:
    488,109
    Likes Received:
    47
    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>
    Mybatis 通用 Mapper 3.5.0 发布下载地址
     
Loading...