mybatis的typeAliases别名

栏目: IT技术 · 发布时间: 4年前

内容简介:typeAliases是MyBatis中的别名处理器类,翻译过来就是修改mybatis-config.xml核心配置文件

一、前言

typeAliases是MyBatis中的别名处理器类,翻译过来就是 别名 的意思。别名处理器的作用就是把 Java 类型,给它起一个简单一点的别名,这样我们在XML文件中引入全类名的地方就可以使用别名替代。这样可以减少很多的工作量,节约开发时间。例如下面我们使用的是全类名:

<select id="findByName" parameterType="string" resultType="com.aaa.entity.User">
        select * from user where name like #{name}
</select>

二、案例

修改mybatis-config.xml核心配置文件

<typeAliases>
        <!--typeAlias:某个java类型的全限定名;type:类名;alias:别名;如果类比较多,需要写很多个?怎么办?-->
        <typeAlias type="com.aaa.entity.User" alias="user"></typeAlias>
</typeAliases>

mybatis的typeAliases别名

上面的案例我们可以看到在typeAliases标签下面,可以为User类起一个别名,那么如果有很多的Java类呢,那不是下面有很多很多的<typeAlias></typeAlias>,我们是否能通过一种其他的配置实现为某一个包下面所有的类都起别名,而不用为单独的某一个类。答案是肯定的。

MyBatis为我们提供了一个package标签,可以通过这个标签实现上面的功能配置。下面我们来看看如何使用package标签:

<typeAliases>
        <!--package,默认别名是user-->
        <package name="com.aaa.entity"></package>
    </typeAliases>

通过如上配置可以实现批量起别名

虽然我们可以使用package批量起别名,但是有一种情况会导致冲突,我们来模拟一下,新建一个User类,这个User类在com.queen.mybatis.bean.child目录下面,也就是bean的子包目录下面,如图:

mybatis的typeAliases别名

这是别名冲突了。。。那我们现在又要如何解决这个问题呢?其实您能想到的,MyBatis都为我们想到了

A、使用@Alias注解为某个类型指定新的别名

B、修改User类文件

mybatis的typeAliases别名

修改IUserDao.xml配置文件

mybatis的typeAliases别名

通过上述测试我们可以得出结论:批量起别名的情况下,使用@Alias注解为某个类型指定新的别名,避免出现别名冲突报错


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序员的数学思维修炼(趣味解读)

程序员的数学思维修炼(趣味解读)

周颖 / 清华大学出版社 / 2014-4-1 / 45.00元

本书是一本专门为程序员而写的数学书,介绍了程序设计中常用的数学知识。本书门槛不高,不需要读者精通很多高深的数学知识,只需要读者具备基本的四则运算、乘方等数学基础知识和日常生活中的基本逻辑判断能力即可。本书拒绝枯燥乏味的讲解,而是代之以轻松活泼的风格。书中列举了大量读者都很熟悉,而且非常有趣的数学实例,并结合程序设计的思维和算法加以剖析,可以训练读者的数学思维能力和程序设计能力,进而拓宽读者的视野,......一起来看看 《程序员的数学思维修炼(趣味解读)》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

MD5 加密
MD5 加密

MD5 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具