Mybatis的查询结果除了可以设置为resultType以外,还可以设置为resultMap.
1.方式一:把resultType的值设置为Map
mapper 文件:
<select id="selectReturnMap" resultType="java.util.HashMap"> select id, actno from bankdb.t_account where id = #{id} </select>
接口方法:
Map<Object,Object> selectReturnMap(int id);
测试方法:
AccountDao dao = sqlSession.getMapper(AccountDao.class); Map<Object,Object> map=dao.selectReturnMap(1001); System.out.println("Map=:"+map);
注意:
这里我们并没有设置数据库列名与map的key的对应关系,并且我们也没有指定map里面有些什么key。
mybatis会自动把数据库的列名当作map的key,列值转化成map的value。
SQL返回值只能是一行,多余一行,则无法与map对应,就会报错。
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 4
2.方式二:设置返回值类型为resultMap
标签:Map,map,resultMap,key,Mybatis,返回值,id From: https://www.cnblogs.com/majestyking/p/16770770.html