ibatis 中关于resultMap="" 在后台如何用map 接收的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ibatis 中关于resultMap="" 在后台如何用map 接收的问题相关的知识,希望对你有一定的参考价值。
其中 配置文件如下
<resultMap class="java.util.HashMap" id="rMap">
<result property="username" column="username"/>
<result property="password" column="password"/>
</resultMap>
<select id="getUserByNameAndPass" parameterMap="pmap" resultMap="rMap">
select * from user where username=? and password=?
</select>
——————————上面是配置文件————————————————
后台代码
Map map=sqlmap.queryForMap(arg0, arg1, arg2);
这3个参数 如何填写
给个例子 谢谢
<!---这段不需要,注释掉--->
<!--
<resultMap class="java.util.HashMap" id="rMap">
<result property="username" column="username"/>
<result property="password" column="password"/>
</resultMap>
-->
<!--这里传入一个map,返回一个map-->
<select id="getUserByNameAndPass" parameterClass="map" resultClass="map">
<!--
#username# ---向map获取键值为username的值
#password# -- 同上
resultClass="map" ——代表返回前台的数据封转为map格式,键值对应和你sql的列名对应,
但是要注意返回后台的是不是键值都是大写了。不同数据库返回的键可能有些都是大写的例如oracle,sqlserver 是sql中的列名
-->
<![CDATA[
select username,password from user where username=#username# and password=#password#
]]>
</select>
public Map getUserByNameAndPass(String username,String password)
//用map封转多个参数
Map params = new HashMap();
params.put("username",username);
params.put("password",password);
//如果定义命名空间的需要加前缀,第一个是你xml配置sql的id,第二个是map参数
Map map=sqlmap.queryForMap("getUserByNameAndPass", params);
System.err,println(map.get("password"));//获得password
//System.err,println(map.get("PASSWORD"));//有些数据库返回的是大写,例如oracle
System.err.println(map.get("username"));//获得username
//System.err,println(map.get("USERNAME"));//有些数据库返回的是大写,例如oracle
return map;
参考技术B select * from user where username=? and password=?
==>
select * from user where username=#nm# and password=#pw#
Map map=sqlmap.queryForMap(arg0, arg1, arg2);
==>
Map mp = new HashMap();
mp.put("nm","ss");
mp.put("pw","mm");
Map map=sqlmap.queryForMap("getUserByNameAndPass", mp);本回答被提问者和网友采纳
以上是关于ibatis 中关于resultMap="" 在后台如何用map 接收的问题的主要内容,如果未能解决你的问题,请参考以下文章
ibatis resultmap中的列数可以大于结果集吗?怎么配置,现在报错,我在resultmap中有
java ibatis中resultMap 列中列使用select出字符串集合映射到列变量问题,请教大家,例:
MyBatis中关于resultType和resultMap的区别
各位大拿进来看看,关于ibatis的resultmap找不到的问题