解决属性名与字段名不一致的问题
- 新建项目 --> 测试实体类字段不一致的情况
- 数据库字段:id,name,pwd
- 实体类属性:id,name,password
- 输出结果
User{id=1, name='Iris', pwd='null'}
SELECT * FROM user WHERE id = #{id};
SELECT id,name,pwd FROM user WHERE id = #{id}
SELECT id,name,pwd as password FROM user WHERE id = #{id}
// 运行结果:User{id=1, name='Iris', pwd='123456'}
ResultMap -- 结果集映射
Mybatis中最重要、强大的元素
设计思想:对简单的语句做到零配置,对于复杂一点的语句,只需要描述语句之间的关系就行了
<resultMap id="UserMap" type="User">
<!--column为数据库中的列名,property为实体类中的属性名-->
<!--将字段映射为属性-->
property="password" jdbcType="VARCHAR"/>
</resultMap>
<!--根据ID查询用户-->
<select id="getUserById" resultMap="UserMap">
SELECT * FROM user WHERE id = #{id};
</select>