碰到了一个Hibernate异常:
Exception: Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set
配置文件中已经数据库方言如下:
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
创建SessionFactory对象时会抛出上面的异常,最初创建SessionFactory采用下面方式:
new Configuration().configure("/conf/hibernate/hibernate.cfg.xml")
.buildSessionFactory(new StandardServiceRegistryBuilder().build())
修改SessionFactory创建的方式,解决了上面的异常,创建方式如下:
Configuration configuration = new Configuration();
configuration.configure("/conf/hibernate/hibernate.cfg.xml");
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties()).build();
SessionFactory sessionFactory = configuration
.buildSessionFactory(serviceRegistry);
return sessionFactory;
本文介绍了一种在Hibernate配置中遇到的方言设置异常,并提供了解决方案。通过调整SessionFactory的创建方式,确保了方言设置生效。
2604

被折叠的 条评论
为什么被折叠?



