MyBatis中的ResuleMap映射
1.介绍
由于实体类中的属性命名放大是小驼峰规则与数据表中字段的命名规则不同所以会出现实体类属性名与表中的字段名不相同的情况,则查询出的数据该属性会为null
2.在动态代理中使用resuleMap标签完后映射
<!--
id:唯一表示
type:给哪个实体类映射关系
-->
<resultMap id="userResultMap" type="user">
<!--主键就用id标签修饰-->
<id property="id" column="id"/>
<!--非主键用resule进行修饰-->
<result property="name" column="name"/>
<result property="password" column="password"/>
<result property="roleName" column="role_name"/>
</resultMap>
如果映射的为表中的主键,则用id标签进行实体类的属性和数据表列字段的映射
如果映射为表中的非主键,则用result标签进行实体类的属性和数据表列字段的映射
3.在动态代理中的查询语句变化
动态代理中查询返回值类型不再是resultTpye标签,而是使用resultMap标签
<select id="getUserList" resultMap="userResultMap">
select * from t_user;
</select>