你确定都查了一遍?怎么传的参数,是这样查的吗
List list = null;
HibernateTemplate session = getHibernateTemplate();
list = session.find("from User order by userId");
List list = null;
HibernateTemplate session = getHibernateTemplate();
list = session.find("from User order by userId");
解决方案 »
- 请教高手:jsp以超链接action传中文参数的乱码问题
- jsp+servlet+hibernate异常
- g.drawImage(tmpImage, 0, 0, 1, 1, null)有疑问!!!
- spring 的 entityDao 返回 List 集合的问题!!!!!!!!!!!!!!!!!!!!
- hibernate用Criteria做子查询的问题,高分求救高人!
- SpringMVC的国际化问题
- 求助!急急急--javamail发送邮件时候连接不上smtp host
- 大家进来看看我的这个NodeList为什么是空的呀?
- Tomcat 5.0启动错误
- jboss7.11 final 部署ear包得问题(强迫症系列)
- 怎样将数据库表中数据实时load进内存,提高查询速度?????
- 怎样将对象存入数据库
但如果是spring中用延迟加载并用getHibernateTemplate()的话会遇到一个问题。由于getHibernateTemplate().find()执行完后,spring会将事物结束,这样就关闭了session,于是再取延迟加载的属性就会报错 。
解决的方法有3种:
1采用OpenSessionInView模式将事物提到显示层(详见网上搜索)
2配置自己的事物管理
3采用回调用函数,在里面将所有要取的属性取一边或调用hibernateInitialize方法,将延迟加载的属性搜出来。(这样做与不采用延迟加载的区别在于:不采用延迟加载会把表的外键的外键的……都取出来,这样取只取了需要的外键)