typeAliases 类型命名
typeAliases 别名处理器:可以为我们的java类型起别名(别名不区分大小写)
方式一:
类型别名是为 Java 类型设置一个短的名字,可以方便我们引用某个类
<typeAliases>
<!--
为类型设置类型别名
type:指定的要起别名的类型的全类名,若只设置type,默认的别名就是类名小写,且别名不区分大小写
alias:指定新的别名
-->
<typeAlias type="com.mybatis.bean.User" alias="user"/>
</typeAliases>
方式二:
类很多的情况下,可以批量设置别名这个包下的每一个类创建一个默认的别名,就是简单类名小写。
name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写))
<typeAliases>
<!--
package:为某个包下的所有类批量起别名
name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写))
-->
<package name="com.mybatis.bean"/>
</typeAliases>
注意:
(1)如果没有指定别名,默认的别名就是该类的类名,且不区分大小写;
(2)批量设置包下的类的别名,无法指定别名,默认就是类名;
(3)可以在其他地方引用这个类(如:mapper 映射文件);
<mapper namespace="com.mybatis.mapper.UserMapper">
<!--
<select>:定义查询语句
id:设置SQL语句的唯一标示
resultType:结果类型,即实体类的全限定名
-->
<!--<select id="getUserByUid" resultType="com.mybatis.bean.User"> -->
<select id="getUserByUid" resultType="user">
select uid, user_name, password, age, sex from t_user where uid = #{id}
</select>
</mapper>
方式三:
当给一个包中的类批量起别名的情况下,如果一个包内还有一个包,并且类名发生了冲突,可以使用@Alias 注解为某个类型指定新的别名
<typeAliases>
<package name="com.njf.mybatis.bean"/>
</typeAliases>
JavaBean
@Alias("user")
public class User {
private Integer id;
private String userName;
private Date birthday;
private String sex;
private String addr;
}
批量起别名的情况下使用 @Alias 注解为某个类型指定新的别名
注意:
MyBatis 已经为Java类型取好的别名(自己起别名时小心重复)
MyBatis已经为许多常见的 Java 类型内建了相应的类型别名。它们都是大小写不敏感的,我们在起别名的时候千万不要占用已有的别名。