一个简单的Hibernate工具类HibernateUtil
2024-08-25 06:59:50
HibernateUtil
package com.wj.app.util; import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder; public class HibernateUtil {
public static final SessionFactory sessionFactory;
//ThreadLocal可以隔离多个线程的数据共享,因此不需要对线程进行同步
public static ThreadLocal<Session> session = new ThreadLocal<Session>();
static
{
//使用默认配置文件创建Configuration实例
Configuration cfg = new Configuration()
.configure(); //以Configuration实例来创建SessionFactory实例
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
.applySettings(cfg.getProperties())
.buildServiceRegistry(); /*ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
.applySettings(cfg.getProperties()).build();*/ sessionFactory = cfg.buildSessionFactory(serviceRegistry);
}
public static Session currentSession() { Session s = session.get();
//如果该线程还没有Session,则创建一个新的Session
if (s == null)
{
s = sessionFactory.openSession();
//将获得的Session变量存储在ThreadLocal变量session里
session.set(s);
}
return s;
} public static void clossSession() {
Session s = session.get();
if (s != null)
{
s.close();
}
session.set(null);
}
}
最新文章
- OpenGL: 纹理采样 texture sample
- 广播Broadcast Receiver
- Ansible用于网络设备管理 part 4 使用NAPALM成品库+Gabriele的方法+循环
- JavaScript基础——实现循环
- [LeetCode] Letter Combinations of a Phone Number
- 使用 google gson 转换Timestamp或Date类型为JSON字符串.
- Firefox 23中的新特性(新陷阱)
- eclipse快捷键调试总结【转】
- Java从零开始学四十五(Socket编程基础)
- Disruptor 源码阅读笔记--转
- javascript之数据推送
- python的相对路径导入问题
- Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)
- MVC 传参
- day_ha配置文件
- 面试的妹纸问我:web缓存设置不是后台的事情吗?
- Power BI 3-4月功能更新培训合集
- 聚簇索引(clustered index )和非聚簇索引(secondary index)的区别
- SEIG Modbus 3.4 CVE-2013-0662 漏洞分析与利用
- 【Finchley】【升级变更】Spring Cloud 升级到Finchley版本后需要注意的地方
热门文章
- Java集合类操作优化经验总结
- E. Three States - Codeforces Round #327 (Div. 2) 590C States(广搜)
- S2SH+Hibernate search出现的问题
- 微信小程序正式发布!这是最全的上手指南
- C++——cout输出小数点后指定位数
- getaccesstoken方法
- 九度OJ 题目1384:二维数组中的查找
- [TypeScript] Using Exclude and RootDir until File Globs Lands in 2.0.
- WIN32 根据程序名(映像名称)终止外部程序
- InnoDB MyISAM区别及优化(摘录)