`

2011.8.1日志--hibernate执行sql语句

阅读更多
之前用hibernate去执行sql的update的语句:
String sql = "update task set isFinish=" + isFinish + " where taskId="
+ taskId+";";
Session session = this.getHibernateTemplate().getSessionFactor().
openSession()
SQLQuery sqlQuery =  session.createSQLQuery(sql);
sqlQuery.executeUpdate();
session.close();

但是当我需要查询返回一个数组的时候,上面的方法失效了,即使查出来了,但是也会报一个错误,object can't cast to 具体的类型,也就是返回的是个object数组,不能转化为具体的类型,:查了资料:
String sql = "select * from video where name like '%"+name+"%'";
Session session = this.getHibernateTemplate().getSessionFactor().
getCurrentSession();
SQLQuery  sqlQuery = session.createSQLQuery(sql).addEntity(Video.class);List<Video> list = sqlQuery.list();
return list;
这样就能好用了,就是需要和实体联系起来就好用。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics