Hibernate中获取SessionFactory的方法

本文介绍了在不同版本的Hibernate框架中创建SessionFactory的方法。从4.2.X版本开始,使用ServiceRegistry对象来构建SessionFactory,到了4.4.X版本,则采用StandardServiceRegistryBuilder类实现相同功能。
摘要由CSDN通过智能技术生成

由于刚开始学习Hibernate,在视频教程中获取SessionFactory的方法都如下:

SessionFactory sessionFactory =new Configuration().configure()
			.addClass(User.class).buildSessionFactory();
但在使用新版版的Hibernate框架时这个方法已经显示过时,不再建议使用,因水平有限,只在该方法的注释中注意到要使用到ServiceRegistry的对象来BuildSessionFactory,但如何获取到
这个对象呢,因看不懂源码,就在网上寻找答案,如下:
<pre name="code" class="java"> public class Test {
 
     private static Configuration configuration = null;
     private static SessionFactory sessionFactory = null;
     private static ServiceRegistry serviceRegistry = null;
     public static void main(String[] args) {
         try {
             configuration = new Configuration().configure();
             serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
            sessionFactory = configuration.buildSessionFactory(serviceRegistry);
         } catch (HibernateException e) {
             e.printStackTrace();
         }
     } 
 }


 以上这个可以在4.2.X中使用,但到4.4.X版本中又过时了,取而代之的是StandardServiceRegistryBuilder的这个类,使用方法与上边那个相似,这样就O了,代码如下: 

	public void getSessionFactory() throws Exception {
		Configuration configure =new Configuration().configure();
		ServiceRegistry serviceRegistry=new StandardServiceRegistryBuilder().applySettings(configure.getProperties()).build();
		configure.buildSessionFactory(serviceRegistry);
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值