ibatis多參數的問題

1.對於多參數的問題:

Map

情形一:
<select id="checkLogin2" parameterClass="java.util.Map" resultClass="java.lang.Integer">
SELECT count(*) AS value FROM userinfo WHERE uid=#uid# and pwd=#pwd#
</select>
這種辦法顯得要清楚的很多,也不需要自己手動編寫sql到java之中。
Map map=new HashMap();
map.put("uid", username);
map.put("pwd", password);
Integer r = (Integer) sqlMap.queryForObject("checkLogin2", map);
在java中首先生成需要的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>

這樣就可以將多個參數傳過去了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章