SQL语句没错的情况下,获取不到 mybatis 返回的数据,原因是映射文件出错。例子:
// 有一个实体类 class test{ private String myName; private int myAge; …… // getter和setter方法 } // 假设数据库对应的列名分别为 my_name 和 my_age ,表名为 me // 直接写select语句为 <select id=".." resultType="*.*.test">select my_name,my_age from me</select> // 时会获取不到数据,因为表的cloumn和实体类的property不一致
解决方法
// 方法一 // 增加resultMap映射 <resultMap id="meMap" resultType="*.*.test"> <result column="my_name" property="myName" jdbcType="VARCHAR" /> <result column="my_age" property="myAge" jdbcType="INTEGER" /> </resultMap> <select id=".." resultMap="meMap">select my_name,my_age from me</select> // 方法二 <select id=".." resultType="*.*.test">select my_name as myName,my_age as myAge from me</select>