Hibernate中,将session绑定到线程时,在保存和查询数据的代码里,要正确的关闭session
2015-08-21 17:55
302 查看
比如有个保存的方法
// 保存
public void save(){
Transaction t = XXX
Session s = getSession.beginTransaction();
XXX
s.save();
XXX
// 关闭session
HibernateFactory.closeSession();
}
///查询
public void query(){
List list = query.list();
// 关闭session
HibernateFactory.closeSession();
}
如果保存的时候,不调用相应代码正确的关闭session,就可能出现的情况是:已经保存了数据,数据库也改了,但页面上时而又显示以前的数据。
// 保存
public void save(){
Transaction t = XXX
Session s = getSession.beginTransaction();
XXX
s.save();
XXX
// 关闭session
HibernateFactory.closeSession();
}
///查询
public void query(){
List list = query.list();
// 关闭session
HibernateFactory.closeSession();
}
public static void closeSession() throws HibernateException { Session session = (Session) threadLocal.get(); threadLocal.set(null); if (session != null) { session.close(); } }
如果保存的时候,不调用相应代码正确的关闭session,就可能出现的情况是:已经保存了数据,数据库也改了,但页面上时而又显示以前的数据。
相关文章推荐
- eclipse
- c和lua之间互相调用方法
- Java 语言中 List、Set 和 Map 的区别
- Java 语言中 List、Set 和 Map 的区别
- AV 地址错误 map 文件 根据地址报错,查 Delphi 代码
- [thrift]PHP版多进程服务器
- python爬虫3
- C++ 编码转换
- 关于c++stl
- matlab2015和vs2013混合编程
- 编写高质量代码改善C#程序的157个建议——建议111:避免双向耦合
- 关于JAVA WEB的点滴碎知识
- Item 4:确保变量的初始化 Effective C++笔记
- 关于eclipse几种插件的安装方法
- java杨辉三角
- Java Mail 邮件发送Demo
- C语言回车符号和换行符
- 同步代码块,同步方法,同步静态方法,同步非静态方法的区别
- php:内存回收机制
- python 打开文件,写入文件,关闭文件,读文件,清空文件内容