因为业务的需要,我需要写一个sql才能满足要求。我的sql是三个表的连接(包括左连接,完全连接),所以用到hibernate的createSqlQuery 这个方法,但是当查出的数据过大时(我查出的数据大约是7w),就不能获得list。
我的源码:
public List getList(String sql) {
SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session session = sf.openSession();
Transaction tx = session.beginTransaction();
SQLQuery sqlQuery = null;
List list=null;
//return this.getHibernateTemplate().find(hql);
try {
sqlQuery=session.createSQLQuery(sql);
list = sqlQuery.list();
tx.commit();
}catch(Exception e){
e.printStackTrace();
}finally{
if (session != null && session.isOpen()) {
session.close();
}
}
return list;
}
请哪位高手给小弟解决一下,看看我的代码哪个地方出了问题?谢谢,请尽快回复!!小弟急 ,急 !!!!!!!!