标签:sql查询 lan 项目 name 属性 图片 ima vat class
数据库中的字段
?
新建一个项目,拷贝之前的,测试实体类与数据库字段不一致的情况
public class User {
private int id;
private String name;
private String password;
}
现在测试出现问题
解决方法:
方法一:最简单的在sql语句中直接起别名
<select id="getUserById" resultType="user">
select id,name,pwd as password from mybatis.user where id = #{id}
</select>
方法二就是使用下面的resultMap
结果集映射
首先定义一个resultMap的标签做数据库字段与实体类属性的映射(注:可以只映射不相同的字段与属性)
<!--resultMap叫结果集映射,
就是实现将sql查询出来的结果集映射到实体类里-->
<resultMap id="UserMap" type="User">
<!--column数据库的字段,property实体类中的属性-->
<!--resultMap可以什么哪个字段不一样转哪个字段,
并不用数据库列和实体类属性全部写完-->
<!-- <result column="id" property="id"/>
<result column="name" property="name"/>-->
<result column="pwd" property="password"/>
</resultMap>
然后select标签取引用它,如下:
<select id="getUserById" resultMap="UserMap">
select * from mybatis.user where id = #{id}
</select>
这就是结果集映射的用法。
下面时截取的Mybatis官网上的一些针对resultMap的重要信息:
resultMap
元素是 MyBatis 中最重要最强大的元素。这篇文章的源码在Mybatis-study工程的mybatis-03模块下!,后面会给出码云地址。
标签:sql查询 lan 项目 name 属性 图片 ima vat class
原文地址:https://www.cnblogs.com/laiyw/p/14671271.html