配置:类型别名(typeAliases)
类型别名可为 Java 类型设置一个缩写名字。 它仅用于 XML 配置,意在降低冗余的全限定类名书写,配置方式有两种。
第一种:
<typeAliases>
<typeAlias alias="User" type="com.study.pojo.User"/>
</typeAliases>
当进行了上面这样的配置之后,在.xml文件中的resultType中就可以使用这个别名
<select id="getUserList" resultType="User">
select * from mybatis.user
</select>
**第二种:**使用package 属性设置实体类的包名,当使用这样的设置之后,只可以在mapper.xml文件中使用实体类的类名的首字母小写的别名
<typeAliases>
<package name="com.study.pojo"/>
</typeAliases>
<select id="getUserList" resultType="user">
select * from mybatis.user
</select>
这种情况下如果想要自己设定别名,需要在实体类上加上注解@Alias(“别名”)
@Alias("UserTest")
public class User {
private int id;
private String name;
private String pwd;
}
<select id="getUserList" resultType="UserTest">
select * from mybatis.user
</select>
配置:映射器(mappers)
mapper.xml路径的资源引用(加载mapper.xml文件的方式)
**第一种:*使用resource方式加载,这种方式可以加载任意位置的.xml文件,但是需要每个mapper.xml文件都要进行设置一次
<mappers>
<mapper resource="com/study/dao/UserMapper.xml"/>
</mappers>
**第二种:**通过class类名进行映射mapper.xml文件,但是这种方式需要mapper接口与mapper.xml文件名相同,并且处在相同的包下
<mappers>
<mapper class="com.study.dao.UserMapper"/>
</mappers>
**第三种:**通过包名映射mapper.xml文件,处在这个包下的mapper.xml都可以被找到,要求与第二种方式一样,名字相同,同一个包下
<mappers>
<package name="com.study.dao"/>
</mappers>
ResultMap
如果在实体类中,类的属性与数据库字段不一致的情况下,使用实体类作为结果集对象,那么不一致的属性查出来的信息结果将会为null
public class User {
private int id;
private String name;
private String password;//此字段在数据库中为pwd
}
//此时查询输出结果password字段为null
这种情况下可以使用resultMap进行编写结果集映射,将类的属性与字段名进行对应起来使用。
<resultMap id="userMap" type="UserTest">
<result property="password" column="pwd"/>
</resultMap
<select id="getUserList" resultMap="userMap">
select * from mybatis.user
</select>
5920

被折叠的 条评论
为什么被折叠?



