MyBatis生态强大,更新频繁,足见其生命力非常旺盛。刚刚进行了新版本的发布,MyBatis 3.5.3 发布。在ORM领域,MyBatis是当之无愧的王者。MyBatis首创了SQL映射和ResultSet映射的设计思想,给行业发展指明了方向,历经时间的考验,面对各种后起之秀的挑战,依然笑傲江湖,它是软件工程史上的奇迹。

1、MyBatis 3.5.3 发布

当前MyBatis最新版本,MyBatis 3.5.3已经发布,发布时间是:2019年10月21日

官网介绍:https://github.com/mybatis/mybatis-3/releases

2、MyBatis 3.5.3 新版本特性介绍:

(1)Support variable substitution in CDATA of included <sql />.

<sql /> 的 CDATA 中支持变量替换

(2)Support default method invocation on JDK 14+8 or later.

在 JDK 14+8 或更高版本上支持默认方法调用

(3)Avoid illegal reflective access warning when invoking default mapper method.

调用默认映射器方法时避免非法的反射访问警告

这是关于接口映射器调用默认方法的,有点意思,更多介绍请参考StackOverflow:

https://stackoverflow.com/questions/57578760/mybatis-get-last-insert-id-in-loop-foreach/57586360#57586360

(4)Ambiguous getter/setter now throws ReflectionException only when it is actually accessed.

歧义的 getter/setter,现在仅在实际访问时才抛出 ReflectionException

问题的浮现请参考:https://github.com/mybatis/mybatis-3/issues/1201

3、MyBatis 3.5.3 新版本 bug 修改更新:

SQL provider 引发异常时可能的无限循环

如果下一个元素为 null,则无法迭代 Cursor

queryCursor() 在 MySQL Connector/J 的流模式下失败

标签: none

添加新评论