SessionFactory 负责一个数据库,也只对应一个XML 配置文件(hibernate.cfg.xml)。要确保SessionFactory只创建一次.
import net.sf.hibernate.cfg.Configuration;
import net.sf.hibernate.*;
import java.util.*;
import java.io.File;
public class HibernateUtil {
private static final SessionFactory sessionFactory;
static {
try {
// Create the SessionFactory
Configuration config = new Configuration();.configure();;
sessionFactory =config.buildSessionFactory();;
} catch (HibernateException ex); {
throw new RuntimeException(
"Configuration problem: " + ex.getMessage();,
ex);;
}
}
public static final ThreadLocal session = new ThreadLocal();;
public static Session currentSession(); throws HibernateException {
Session s = (Session); session.get();;
// Open a new Session, if this Thread has none yet
if (s == null); {
s = sessionFactory.openSession();;
session.set(s);;
}
return s;
}
public static void closeSession(); throws HibernateException {
Session s = (Session); session.get();;
session.set(null);;
if (s != null);
s.close();;
}
}
Session 不是线程安全的,代表与数据库之间的一次操作。Session 通过SessionFactory 打开,在所有的工作完成后,需要关闭.
在Session 中,每个数据库操作都是在一个事务(transaction)中进行的,这样就可以隔离开不同的操作(甚至包括只读操作)。我们使用Hibernate 的Transaction API 来从底层的事务策略中(本例中是JDBC 事务)脱身。
分享到:
相关推荐
hibernate的学习笔记,hibernate所以知识点全,一看就能上手........包含代码和书写格式和图片分析~~~~hibernate的学习笔记,hibernate所以知识点全,一看就能上手........包含代码和书写格式和图片分析~~~~...
Hibernate学习笔记整理 以下是 Hibernate 框架的详细知识点: Hibernate 介绍 Hibernate 是一个 ORM(Object-Relational Mapping)框架,用于将 Java 对象映射到数据库表中。它提供了一个简洁的方式来访问和操作...
【hibernate框架开发2016版视频 四天学习笔记完整版】 在软件开发领域,特别是Java Web开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作,使开发者可以更专注于业务逻辑而不是...
日常笔记-Hibernate
4. **HQL(Hibernate Query Language)**: Hibernate特有的SQL方言,支持更复杂的查询。 5. **缓存机制**: 第一级缓存(Session级别的)和第二级缓存(SessionFactory级别的),提高性能。 6. **事务管理**: 提供...
4. **MyEclipse集成Hibernate**: 在MyEclipse中配置Hibernate,可以通过添加Hibernate Capabilities来生成`hibernate.cfg.xml`配置文件以及对应的JavaBean类。在数据库连接成功后,可以选择相应的表进行逆向工程...
hibernate的详细笔记 基础配置
【hibernate4框架学习笔记】 Hibernate是一款强大的ORM(Object-Relational Mapping)框架,它在Java开发中扮演着至关重要的角色,通过提供对象与数据库之间的映射,解决了对象模型和关系模型之间的“阻抗不匹配”...
《Hibernate学习笔记特别详细》 Hibernate,作为一款开源的Object-Relational Mapping(ORM)框架,为Java开发者提供了强大的数据库操作支持。它简化了数据库访问的复杂性,使得开发人员可以像操作对象一样操作...
4. 会话管理:Hibernate的会话接口(Session)是数据库操作的主要入口。笔记将详细介绍会话的生命周期,以及如何在事务中正确地使用open、close、beginTransaction和commit方法。此外,还会涉及一级缓存和二级缓存的...
6.1 案例分析:结合黑马程序员的day1至day4的讲义和笔记,深入理解在实际项目中如何应用Hibernate,解决具体问题。 总结,Hibernate作为强大的ORM框架,为Java开发者提供了便利,通过理解并熟练掌握其核心概念、...
4. **映射策略**:Hibernate提供了多种映射策略,用于处理对象和数据库表之间的映射关系,包括一对一、一对多、多对一、多对多等。这些策略使得开发者可以根据不同的业务需求选择最适合的映射方式。 5. **数据库...
【hibernate_day02笔记】的文档主要涵盖了学习Hibernate框架的基础内容,包括ORM思想、Hibernate入门案例、配置文件解析、核心API的使用等。以下是详细的讲解: **ORM思想**: ORM(Object-Relational Mapping)即...
hibernate 学习笔记精要hibernate 学习笔记精要hibernate 学习笔记精要hibernate 学习笔记精要
这套笔记是我学习Hibernate,进行相关技术点训练时记录下来的,其中包括技术点说明与相关事例,拿出来与大家分享。
《Hibernate入门:第一天笔记详解》 Hibernate,作为Java领域中著名的ORM(Object-Relational Mapping)框架,极大地简化了数据库操作,让开发者可以更加专注于业务逻辑而不是底层的数据访问。本文将基于第一天学习...
Hibernate是Java领域中的一款强大的持久层框架,它实现了对象关系映射(ORM),使得开发者可以使用面向对象的方式来操作数据库。Hibernate简化了数据库操作,通过提供一套API来处理数据的保存、更新、删除和查询,...
在深入探讨Hibernate学习笔记第二天的源码之前,我们先来理解一下Hibernate的核心概念。Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者将数据库操作转化为对象模型,大大简化了数据访问层的开发...