《深入浅出MyBatis技术原理与实战》修复错误和歧义
Posted ykzhen2015
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《深入浅出MyBatis技术原理与实战》修复错误和歧义相关的知识,希望对你有一定的参考价值。
《深入浅出MyBatis技术原理与实战》的一些错误修复,欢迎大家跟帖指出:
1、出版社编辑错误
p25-26页:“role_no_1” ---->1L 这些是出版社编辑错误,方法修改为selectOne("getRole", 1L)
2、p60页: 3.4.3.2节关于EnumTypeHandler操作表述不清。
(1)测试前应该是把数据库表t_role的字段sex从之前的整数型修改为VARCHAR型。
(2)p61页的EnumOrdinalTypeHandler修改为EnumTypeHandler
EnumTypeHandler是根据字符串去变换枚举和数据库字段的。
3、最新MyBatis版本插件接口变动
使用MyBatis 3.4.1或者其以上版本的,由于StatementHandler接口定义的变化,prepare方法的定义为:
Statement prepare(Connection connection, Integer transactionTimeout) throws SQLException;
而编写书时,书中的版本为3.3.0,当时接口的定义为
Statement prepare(Connection connection) throws SQLException;
所以插件的拦截签名需要根据你的版本修改。
使用MyBatis 3.4.1或者其以上版本
@Intercepts(
@Signature(type = StatementHandler.class,
method = "prepare",
args = Connection.class, Integer.class))
使用MyBatis 3.4.1(不包含)以下
@Intercepts(
method = "prepare",
args = Connection.class))
以上是关于《深入浅出MyBatis技术原理与实战》修复错误和歧义的主要内容,如果未能解决你的问题,请参考以下文章
《深入浅出MyBatis技术原理与实战》读书笔记 - MyBatis入门与配置
《深入浅出MyBatis技术原理与实战》读书笔记 - 动态SQL