Map<Long, MSUser> ret = null;
String params = StringUtils.toStringValue(ids);
if(params==null||params.length()==0)return ret;
Map<String, String> map = new HashMap<String, String>();
map.put("id", "1,2,3,4");
map.put("tt", "2,3");
List<MSUser> msUsers = getSqlMapClientTemplate().queryForList("getTsByIds",map);
System.out.println(msUsers.size());//2条,即1,4
return ret;
<select id="getTsByIds" resultClass="MSUser">
select * from ms_user where id in ($id$) and id not in($tt$)
</select>
虽然是猜测的,结果中了,果然是通过map的key来区分的,如果你传递的是一个字符串则会把id和tt都替换成同一个值了。