网上说的,都感觉说不清楚,自己总结下:
数据库里有个User表,分别有id,name字段
1.获取id为xxx的用户名,就这么写
<select id="getUserById" resultType="java.lang.String">
select name from User where id=#id#
</select>
2.获取id为xxx的整个User对象 ,可以用resultType
<select id="getUserById" resultType>
select * from User where id=#id#
</select>
也可以用resultMap,但这里的User对象里的name已被我改为name1,对应name列
<resultMap class="类权限限定名" id="userMap">
<result property="id" column="id"/>
<result property="name1" column="name"/>
</resultMap>
<select id="getUserById" resultType>
select * from User where id=#id#
</select>
区别就是:使用resultType,实体类里的字段需与表里的字段完全对应才能被映射;而resultMap, 实体类User里的字段不需要与表里的字段完全对应,自定义实体类里的字段名只要和resultMap里的column的对应就能被映射
本文地址:https://blog.csdn.net/weixin_41763571/article/details/107162852