mybatis的源码解析-2-对xml文件解析-3-typeAliases
typeAliases解析:
1简介
typeAliases别名,作用是对类起一个简单的名字,通过配置别名,我们不用再指定完整的包名,并且还能取别名。
2用法
别名主要有三种写法:
1<package name="cn.itcast.mybatis.po"/>
2<typeAlias type="cn.itcast.mybatis.po.User" alias="user"/>
3<typeAlias type="cn.itcast.mybatis.po.User"/>
第一种方式遍历name的包下所有的类,将类下的所有类的全部名字小写作为别名.第二种方式类似第一种方式将类的全部名字小写作为别名
最常用的方式是第一种,不过通过对源码的解析我们可以看到这三种方式最后都是调用了第二种方式的解析方法.
当然还有注解方式,不过基本不用,没写.
3源码解析
Mybatis默认支持的别名在TypeAliasRegistry类中的唯一构造方法(无参)中注册过.
registerAliases此方法的所有方法最后都调用方式二的方法
public void registerAlias(String alias, Class<?> value) {}
在Configuration类中有此属性,即将TYPE_ALIASES放到TypeAliasRegistry中,将TypeAliasRegistry放到Configuration类中
Protected final TypeAliasRegistry typeAliasRegistry = new TypeAliasRegistry();
在Configuration类的构造方法中注册了其他别名列出一些
1对第二种方式解析
2对第一种方式解析
3对第三种方式解析
在第一种方式的基础上直接调用此方法--在第一种方法中讲过.
public void registerAlias(Class<?>type) {}
借鉴网址:http://www.cnblogs.com/dongying/p/4037678.html