`
liuhd2010
  • 浏览: 148013 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

关于Hibernate buildsessionfactory()过时处理

 
阅读更多

Hibernate创建SessionFactory在Hibernate3中和Hibernate4中写法是不一样的,

在Hibernate3中写法:

 

static SessionFactory sessionFactroy;
static {
    try{
        Configuration config = new Configuration().configure();
        sessionFactory = config.buildSessionFactory();
    }catch(Exception e){
        e.printStackTrace();
    }    
}

 

 

 

在Hibernate4中写法:

private static SessionFactory sessionFactory;
private static ServiceRegistry serviceRegistry;
public static SessionFactory createSessionFactory()throws HibernateException{
    Configuration configuration = newConfiguration();
    configuration.configure();
    serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();        
    sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    return sessionFactory;
}

 这里给出一个创建SessionFactory工具类,在工程中加入该类后可直接引用:

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 HibernateUtils{
	private static SessionFactory factory;
        static{
		Configuration cfg = new Configuration().configure();
		ServiceRegistry sr = new ServiceRegistryBuilder().applySettings(
				cfg.getProperties()).buildServiceRegistry();
		factory = cfg.buildSessionFactory(sr);
	}

	public static SessionFactory getSessionFactory(){
		return factory;
	}

	public static Session getSession(){
		return factory.openSession();
	}

	public static void closeSession(Session session){
		if (session != null){
			if (session.isOpen()){
				session.close();
			}
		}
	}
}

 

 

分享到:
评论

相关推荐

    在Java SE中使用Hibernate处理数据

    在Java SE环境中使用Hibernate处理数据是一项常见的任务,尤其是在开发企业级应用时,需要对数据库进行高效、灵活的管理和操作。Hibernate作为一个流行的Object-Relational Mapping(ORM)框架,能够简化Java程序员...

    Myeclipse 10.0 + Hibernate 4.3.5 连接 Oracle 11G的演示代码

    Hibernate 4.3.5是Java领域中流行的对象关系映射(ORM)工具,允许开发人员通过面向对象的方式处理数据库操作,避免了传统的JDBC繁琐的SQL编写。在这个版本中,`buildSessionFactory()`方法被标记为过时(deprecated...

    hibernate-3.2源代码

    Hibernate支持事件驱动编程,如PreInsertEventListener、PostLoadEventListener等,允许用户在特定操作前或后进行自定义处理。 八、持久化操作 - 保存(save()):为新对象生成ID并将其放入一级缓存。 - 更新...

    关于HIBERNATE

    **关于Hibernate:** Hibernate是一个强大的Java对象关系映射(ORM)框架,它为开发者提供了在Java应用程序中管理和操作数据库的强大工具。ORM框架的核心目标是消除Java应用与SQL数据库之间的直接耦合,使得开发者...

    hibernate的jar包

    在Java应用程序中,Hibernate作为对象关系映射(ORM)工具,使得开发者可以通过处理Java对象来间接操作数据库,无需直接编写SQL语句。下面将详细介绍Hibernate框架的核心组件、功能以及如何在项目中使用Hibernate的...

    Hibernate+IDEA 2018 一个hibernate程序

    SessionFactory factory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory(); Session session = factory.openSession(); // 测试代码 session.close(); factory.close(); } } ``...

    Hibernate之配置使用案例hibernate001

    SessionFactory sessionFactory = config.buildSessionFactory(); ``` 有了SessionFactory,我们就可以创建Session实例,进行CRUD操作了。例如,插入一条新的用户记录: ```java Session session = sessionFactory...

    Hibernate源代码分析

    首先,从 org.hibernate.cfg.Configuration.java 开始,使用 Hibernate 框架实现应用程序,首先就要与 org.hibernate.cfg.Configuration 打交道,要使用 Configuration.buildSessionFactory() 方法获得一个 ...

    Hibernate基本配置演示

    在Java开发中,Hibernate是一款强大的对象关系映射(ORM)框架,它简化了数据库操作,使得开发者能够用Java对象来处理数据。这篇教程将深入讲解Hibernate的基本配置过程,确保你能顺利搭建并运行一个简单的Hibernate...

    Hibernate执行持久层访问步骤

    1. 创建SessionFactory:通过Configuration类加载hibernate.cfg.xml配置文件,然后调用configure()方法,最后buildSessionFactory()生成SessionFactory实例。 2. SessionFactory是线程不安全的,通常在应用启动时...

    Hibernate3使用经验

    以上就是关于 Hibernate 3.0 的一些使用经验和技巧。这些内容涵盖了如何在 Hibernate 中配置参数、执行 SQL 语句、获取 Session 以及如何在 DAO 层进行事务处理等方面的知识点。希望对读者有所帮助。

    hibernate开发流程 入门

    而Hibernate 透视图则专用于处理Hibernate相关的配置和操作。 开发Hibernate应用的步骤如下: 1. **创建Java项目**:首先,你需要在MyEclipse中创建一个新的Java Project或Web Project。这将作为你的应用程序的...

    hibernate第一个例子

    【hibernate第一个例子】 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它极大地简化了数据库操作。...通过不断地实践和学习,你可以掌握更多关于Hibernate的高级特性和最佳实践。

    hibernate3 最简单实现项目

    6. antlr-2.7.7.jar:解析器生成器,用于处理HQL(Hibernate Query Language)。 接下来,我们需要创建一个实体类,例如`User`,并使用注解或XML文件来定义它与数据库表的映射。例如,可以使用`@Entity`、`@Table`...

    hibernate源码

    配置完成后,可以使用`buildSessionFactory`方法创建SessionFactory,它是线程安全的,一个应用程序通常只需要一个SessionFactory实例。 接下来,实体类是Hibernate工作的基础。实体类通常对应数据库中的表,类中的...

    hibernate主要知识点

    Hibernate 是一款流行的 Java 平台上的 ORM(对象关系映射)框架,它使得开发者可以使用面向对象的方式处理数据库操作,而无需直接编写 SQL 语句。ORM 框架如 Hibernate、TopLink 和 OJB 等,能够将数据库中的表映射...

    hibernate系列(一)hibernate入门

    SessionFactory sessionFactory = config.buildSessionFactory(); Session session = sessionFactory.openSession(); ``` **6. CRUD操作** 有了Session,我们就可以进行CRUD操作了。例如,插入一条新的用户记录: ...

    Hibernate简单的demo

    2. **对象关系映射(ORM)**: Hibernate 提供了ORM工具,将Java对象与数据库表之间的映射关系自动化处理,实现了数据的透明化访问。 3. **Session**: Session是Hibernate的主要工作接口,它负责在应用程序和数据库...

    hibernate

    SessionFactory sessionFactory = config.buildSessionFactory(); ``` - **解释**:使用 `Configuration` 对象创建 `SessionFactory`,`SessionFactory` 是线程安全的,可以被多个线程共享使用。 **3. 创建 ...

Global site tag (gtag.js) - Google Analytics