學習hibernate5.x的一些坑
阿新 • • 發佈:2018-12-27
hibernate5.x中buildServiceReguistry()方法使用方法
5版本匯入更換為:
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
在4版本中
Configuration conf = new Configuration().configure();
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(conf.getProperties()).buildServiceRegistry();
SessionFactory sf = conf.buildSessionFactory(serviceRegistry);
在5版本的Hibernate中,buildServiceReguistry()方法被替換了,用如下方法:
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(conf.getProperties()).build();
hibernate4.3版本後org.hibernate.service.ServiceRegistryBuilder被棄用
網上大部分的視訊教程裡會用到serviceRegistry()方法來註冊服務物件,這個類在4.3版本之後已經被棄用了,所以你會發現你敲出來的程式碼行會報錯,新的用法如下:
//建立配置物件 Configuration config = new Configuration().configure(); //建立服務註冊物件 ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(config .getProperties()).build(); //建立會話工廠物件 sessionFactory = config.buildSessionFactory(serviceRegistry); //會話物件 session = sessionFactory.openSession(); //開啟事務 transaction = session.beginTransaction();
甚至可以省略建立服務物件這一步,這樣寫
//建立配置物件(讀取配置文件)
Configuration config = new Configuration().configure();
//建立會話工廠物件
sessionFactory = config.buildSessionFactory();
//會話物件
session = sessionFactory.openSession();
//開啟事務
transaction = session.beginTransaction();
未完待續