public Query getNamedQuery(String queryName,Map<String,Object> param){
Query query = getSession().getNamedQuery(queryName);
Query rsQuery = null;
try{
Velocity.init();
VelocityContext context = new VelocityContext();
if(param!=null) {
Set<String> keys = param.keySet();
for(Iterator<String> it = keys.iterator();it.hasNext();) {
String key = it.next();
context.put(key,param.get(key));
}
}
StringWriter sql = new StringWriter();
Velocity.evaluate(context,sql,null,query.getQueryString());
rsQuery = getSession().createSQLQuery(sql.toString());
BeanUtil.forceSetProperty(rsQuery,"queryReturns",BeanUtil.forceGetProperty(query,"queryReturns"));
}catch(Exception e) {
e.printStackTrace();
}
return rsQuery;
}
hibernate的NamedQuery传参数
猜你喜欢
转载自java-script.iteye.com/blog/1746541
今日推荐
周排行