假如数据库中关于名称的列名为name,而实体类对应的属性名为sname,这是我们就无法获得对应的name的值。
解决方法如下:
1.为列名指定别名 别名和实体类的属性名不一致
#user_mapper.xml
<select id="selectUser" resultType="User">
select id,name sname,age from student where id = #{id}
</select>
复制代码
2.设置结果映射类型
#user_mapper.xml
<select id="selectUser" resultMap="UserMap">
select * from student where id = #{id}
</select>
<resultMap type="User" id="UserMap">
<!-- id为主键 -->
<id column="id" property="id"/>
<!-- column是数据库中表的列名 property是对应实体类的属性名 -->
<result column="name" property="sname"/>
<result column="age" property="age"/>
</resultMap>复制代码