首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

[Hibernate框架]Hql话语in中带参数的写法

2012-08-29 
[Hibernate框架]Hql语句in中带参数的写法最近遇到两次在hql的in中传递参数的问题,最初让我纠结万千。?在dao

[Hibernate框架]Hql语句in中带参数的写法

最近遇到两次在hql的in中传递参数的问题,最初让我纠结万千。

?

在dao层已经封装好了一个使用hql获取数据的方法:


也就是说,前面使用数组集合的话则必须调用setParameterList方法。

那么改一下Dao层的setParameter方法即可达到通用了:

private Query setParameter(Query query, Map<String, Object> map) {if (map != null) {Set<String> keySet = map.keySet();for (String string : keySet) {Object obj = map.get(string);//这里考虑传入的参数是什么类型,不同类型使用的方法不同if(obj instanceof Collection<?>){query.setParameterList(string, (Collection<?>)obj);}else if(obj instanceof Object[]){query.setParameterList(string, (Object[])obj);}else{query.setParameter(string, obj);}}}return query;}

?

最初还以为是hibernate不够智能化,原来是自己没学好,项目经验相当重要呀...

?

?

热点排行