Mybaits框架的parameterType详解

Mybaits框架的parameterType详解

2016年12月01日 15:26:54

阅读数:1090

用过Mybatis框架的都见过下面的一个xml配置

Mybaits框架的parameterType详解_第1张图片

显而易见,我们需要的参数类型分别为:java.lang.Integerjava.lang.String

我们写成全名肯定是不会错的,但这里都把包名全省略了,不禁发问,错了吗?又有人连首字母都小写了,如integer、string,错了吗?

我现在要告诉你的是上述写法都是可以的,又有什么依据呢,那我乱写一个岂不是都可以,这肯定不行,答案会在下面公布。

那我要是想传入一个集合java.util.HashMap,除了写全类名,我们又能用什么省略名去写呢,我们做个设想,去掉包名可以吗?现在公布答案,可以,那都是在哪定义的。

答案

准确来说省略的parameterType参数名其实叫做映射类型的别名(alias)

被定义在类:org.apache.ibatis.type.TypeAliasRegistry

一起看看重要的源代码
Mybaits框架的parameterType详解_第2张图片
Mybaits框架的parameterType详解_第3张图片
Mybaits框架的parameterType详解_第4张图片

是否有一种豁然开朗的感觉,以后映射类型的别名都知道怎么去写了吧,不要再去写那么长的类名了。
并且别名是不区分大小写的,下面的代码可以得到诠释。

Mybaits框架的parameterType详解_第5张图片

最后有些人可能会说,一些常见的JDK提供的类,mybaits确实已经帮我们封装好了别名,如果是我们自定义的类呢,我在配置中觉得长了,频繁的写不太爽,也想用别名的方式。

Mybatis当然考虑到了,配置如下:

Mybaits框架的parameterType详解_第6张图片

小伙伴们,是否get了呢,get的话,下面点个赞吧。

你可能感兴趣的:(mybatis)