Будьте в спящем режиме: диалект не был установлен. Установите свойство hibernate.dialect

У меня есть следующее hibernate.cfg.xml:

<hibernate-configuration>
   <session-factory>
      <property name="hibernate.format_sql">true</property>
      <property name="hibernate.show_sql">true</property>
      <property name="hibernate.connection.url">jdbc:mysql://localhost/EJB</property>
      <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
      <property name="hibernate.connection.username">root</property>
      <property name="hibernate.connection.password">password</property>
      <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
      <property name="hibernate.hbm2ddl.auto">update</property>
      <property name="hibernate.current_session_context_class">org.hibernate.context.ThreadLocalSessionContext</property>
 <!-- Snip -->

Который я использую использование этой строки:

sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();

Затем в другом месте я пробую это:

SimpleSelect pkSelect = new SimpleSelect(Dialect.getDialect());

Который приводит к следующему исключению:

org.hibernate.HibernateException: The dialect was not set. Set the property hibernate.dialect.

Отметьте, следующее извлечение из журналов:

02:26:48,714  INFO Configuration:1426 - configuring from resource: /hibernate.cfg.xml
02:26:48,717  INFO Configuration:1403 - Configuration resource: /hibernate.cfg.xml
02:26:48,909 DEBUG Configuration:1387 - hibernate.dialect=org.hibernate.dialect.MySQLDialect

Какие-либо идеи, что я делаю неправильно?

5
задан Bozho 29 June 2010 в 12:13
поделиться

1 ответ

В javadoc getDialect () сказано:

Получить экземпляр диалекта, заданного текущими свойствами системы.

Итак, чтобы этот метод работал, у вас должен быть настроен hibernate.dialect в hibernate.properties .

Используйте SessionFactoryImplementor # getDialect () .

4
ответ дан 15 December 2019 в 00:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: