您的当前位置:首页正文

Mybatis输入映射parameterType与输出映射ResultMap是Map类型的解决方案

来源:九壹网

当输入映射parameterType为是Map类型时:

<!-- 传入放入值是Map类型时:
		${uname}:取出key='uname'的值
	 -->
	<select id="findUser" parameterType="java.util.HashMap" resultType="cn.itcast.mybatis.po.User">
		select * from user where user.username like '%${uname}%' and user.sex='女'
	</select>

<!--public List<User> findUser(Map<String, String> map) throws Exception;-->

当ResultType是Map类型时

使用resultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。

如果查询出来的列名和pojo类的列名全部不一致,则不会创建pojo对象

只要查询出来的列名和pojo中的属性名有一个一致,就会创建pojo对象

resultTypeMap是,将输出的字段名称作为Mapkeyvalue为字段值;如果查询出多个对象,Mapper.java应该定义为List<HashMap> 类型

<!-- 测试返回值是Map类型,字段是key值,字段的值是value -->
	<select id="findUserMap" parameterType="cn.itcast.mybatis.po.User" resultType="java.util.HashMap">
		select * from user where username like '${username}'
	</select>

<!--public List<HashMap> findUserMap(User user) throws Exception;-->


因篇幅问题不能全部显示,请点此查看更多更全内容

Top