hibernate 4为什么用buildSessionFactory(ServiceRegistry serviceRegistry) 来代替buildSessionFactory()
我不明白为什么要废弃buildSessionFactory()方法
Configuration cfg = new Configuration().configure();
ServiceRegistryBuilder serviceRegistry = new ServiceRegistryBuilder();
SessionFactory sf = cfg.buildSessionFactory(serviceRegistry.buildServiceRegistry());
我查了资料,代码像上面那样写就可以,为什么????
hibernate 开启迹拍事务 SessionFactory 它那个不算废弃 应该算是替代 因为 Service Registry 是一个独立的组件,乎州拆具有注册表(registry)和存储库功能。他的功能比较全面 用在XML模式上面 比较好! 区别不岁枣大的! 你上面的代码 跟之前的是一样的
public static Session openSession(){
try{
config=new Configuration().configure();
factory=config.buildSessionFactory();
session=factory.openSession();
}catch(HibernateException e){
e.printStackTrace();
}
return session;
}
我也码枣遇到了提局神示方言设置的问题,像下面这样写桐模亏就可以了
Configuration cfg = new Configuration().configure();
ServiceRegistryBuilder serviceRegistry = new ServiceRegistryBuilder().applySettings(cfg.getProperties());
SessionFactory sf = cfg.buildSessionFactory(serviceRegistry.buildServiceRegistry());
<滚陆property name="dialect">迅伏org.hibernate.dialect.MySQL5Dialect</property>这大昌顷个叫方言
private static SessionFactory configureSessionFactory() throws HibernateException {
Configuration configuration = new Configuration();
configuration.configure();
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;
}
一斗山兆空方法:空猜中
private static SessionFactory sessionFactory;
private static ServiceRegistry serviceRegistry;
private static SessionFactory configureSessionFactory() throws HibernateException {
Configuration configuration = new Configuration();
configuration.configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
return sessionFactory;