5.1、问题
新建一个Moudle mybatis-03,测试实体类字段不一致的情况
public class User {
private Integer id;
private String name;
private String password;
测试出现问题
解决方式:
- 起别名
<!--方式一:起别名-->
<select id="getUserById" parameterType="Integer" resultType="user">
select id,name,pwd as password from user where id = #{id}
</select>
- resultMap解决
结果集映射
id name pwd
id name password
<resultMap id="userMap" type="user">
<!--<result column="id" property="id"/>
<result column="name" property="name"/>-->
<result column="pwd" property="password"/>
</resultMap>
<select id="getUserById" parameterType="Integer" resultMap="userMap">
select * from user where id = #{id}
</select>
-
resultMap元素是Mybatis中最重要最强大的元素。
-
resultMap 的设计思想是,对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了。
-
ResultMap 的优秀之处——你完全可以不用显式地配置它们。(就是字段名和属性名不同,只需要配置不同的那个就可以了)
-
如果这个世界总是这么简单就好了。