数据库中的字段java
新建一个项目,拷贝以前的,测试实体类字段不一致的状况数据库
public class User { private int id; private String name; private String password; }
测试出现问题mybatis
// select * from mybatis.user where id = #{id} //类型处理器 // select id,name,pwd from mybatis.user where id = #{id}
解决方法:测试
起别名设计
<select id="getUserById" resultType="com.loading.pojo.User"> select id,name,pwd as password from mybatis.user where id = #{id} </select>
结果集映射code
id name pwd id name password
<!--结果集映射--> <resultMap id="UserMap" type="User"> <!--column数据库中的字段,property实体类中的属性--> <result column="id" property="id"/> <result column="name" property="name"/> <result column="pwd" property="password"/> </resultMap> <select id="getUserById" resultMap="UserMap"> select * from mybatis.user where id = #{id} </select>
与数据库中相同的字段类型就不用映射了id和namexml
resultMap
元素是 MyBatis 中最重要最强大的元素ResultMap
最优秀的地方在于,虽然你已经对它至关了解了,可是根本就不须要显式地用到他们。