`
liuhd2010
  • 浏览: 145947 次
  • 性别: 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();
			}
		}
	}
}

 

 

分享到:
评论

相关推荐

    Hibernate3使用经验

    ---------------Hibernate3.0 配置-------------- 1.Hibernate中配置参数 /** * 注意:HQL中使用参数的方法: ...SessionFactory sf = config.buildSessionFactory(); Session session = sf.openSession();

    HIbernate4.3.6整合c3p0所需jar

    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1843) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1928) at test.UserTest01.save(UserTest01....

    hibernate操作数据库笔记

    用Configuration对象获取SessionFactory和Session对象:SessionFactory sf = Configuration对象.buildSessionFactory();Session session = SessionFactory对象.openSession(); 注:由于SessionFactory是重量级对象,很...

    Hibernate1

    SessionFactory factory = new Configuration().configure().buildSessionFactory(); Session session = factory.openSession(); session.beginTransaction(); session.save(student); session....

    J2EE利用Hibernate采用B/S架构网页设计

    import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.cfg.Configuration; /** * Configures and provides access to Hibernate sessions, tied to the * current ...

    hibernate精华教程

    a)使用Configuration对象的buildSessionFactory()方法创建SessionFactory对象。 b)使用SessionFactory对象openSession()方法创建Session对象。 c)使用Session的相应方法来操作数据库,将对象信息持久化到数据库。...

    hibernate2

    Hibernate Annotation简单应用 接着上次的程序我们将其改为Annotation版本的 既然用Annotation那就要将其对应的包导入到工程 ... .buildSessionFactory(); 这时,我们就可以运行这个测试类了。

    mysql+jdbc+jsp+Hibernate3.2+tomcattomcat5.028成功测试

    mysql,jdbc,Hibernate,tomcat [mysql+jdbc+jsp+Hibernate3.2+tomcattomcat5.028成功测试-简单] <br> 1 .数据库设计:库mydb 表events <br>EVENT_ID BIGINT(20) NOT NULL AUTOINC EVENT_DATE DATETIME...

    Hibernate的JNDI绑定分析

    Hibernate的JNDI名称绑定是在net.sf.hibernate.impl.SessionFactoryObjectFactory... SessionFactory sf = conf.buildSessionFactory(); 首先是new Configuration()创建一个Configuration,在这个构造器里面进行

    Hibernate5的Query接口浅析

    Configuration cfg=new Configuration().configure("hibernate.cfg.xml"); SessionFactory sf=cfg.buildSessionFactory(); Session session=sf.getCurrentSession(); Transaction tx=session.beginTransaction();

    SSH的jar包.rar

    一个请求在Struts2框架中的处理大概分为以下几个步骤: 1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求 2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选...

    三大框架原理

    3.通过config.buildSessionFactory();//创建SessionFactory 4.sessionFactory.openSession();//打开Sesssion 5.session.beginTransaction();//创建事务Transation 6.persistent operate持久化操作 7.session....

    Hibernate 主清单文件配制的详细介绍

    Hibernate 主清单文件配制的详细介绍 1 Hiernate 清单配制文件 ...private static SessionFactory factory = new Configuration().configure().buildSessionFactory(); /** * 获得线程绑定的session * @return

    ACCP8.0北大青鸟SSH10章上机

    Configuration configuration = new ...或者通过MyEclipse的Hibernate工具自动生成的HibernateSessionFactory.getSession()方法来获取Session,调用HibernateSessionFactory. closeSession()方法来关闭session。

    客户关系管理系统框架搭建(二)

    SessionFactory sf=config.buildSessionFactory(); Session s=sf.openSession(); Transaction tx=s.beginTransaction(); SysUserGroup sysUserGroup=new SysUserGroup(); ...

    中小公司人事管理系统

    sf=cfg.buildSessionFactory(); } //得到一个Session public static Session getsession()throws Exception{ s=sessionThread.get(); try{ if(s==null){//如果当前的session线程中没有session对象的情况...

    nhibernate架构分析(uml图)

     SessionFactory由Configuration.BuildSessionFactory创建,这个对象一般使用Singleton模式。 Session用于将对象持久化,支持数据库事务,另外Session还提供了强大的数据加载功能。 Session由SessionFactory创建...

Global site tag (gtag.js) - Google Analytics