ibatis传入多个参数

一般情况下,我们用ibatis都是传入一个参数,这个参数可以为一个类,一个字符串,一个整型等等,例如:

<select id="selectpw" parameterClass="String" resultClass="String">
            select pwd from userinfo
            where userid=#userid#
        </select>

在方法体里可以用:password = (String)sqlMapClient.queryForObject("selectpw", userid)得到password。

但是有时候我们却想从前面传入两个或多个参数,这时候怎么办呢? -----------------用Map:

在方法体里:我们把多个参数存放在map里,然后在前面获得它:

Map map = new HashMap();
        map.put("userid", userid);
        map.put("name", name);

cardList = (List)sqlMapClient.queryForList("findByName", map);

在SQL语句中:

<select id="findByName" parameterClass="java.util.Map" resultClass="Card">
            select * from cardinfo where userid=#userid# and name like '$name$'
        </select>

这样就可以将多个参数传过去了。

posted @ 2015-07-31 21:08  QQ天堂  阅读(522)  评论(0编辑  收藏  举报