Hibernate имеет возможность автоматически определять hibernate.dialect
. Как я могу получить это автоматически определенное значение? Мне не удалось найти никакой информации по этому поводу.
Получить автоматически обнаруженный диалект гибернации
Ответы (2)
Вы можете получить его из SessionFactory, но вы нужно будет преобразовать его в SessionFactoryImplementor первый:
SessionFactory sessionFactory = ...; // you should have this reference
Dialect dialect = ((SessionFactoryImplementor) sessionFactory).getDialect();
Вышеупомянутое будет извлекать экземпляр диалекта, который в настоящее время используется фабрикой сеанса, который является автоматически обнаруженным экземпляром, если он не был явно указан через свойства.
person
ChssPly76
schedule
15.10.2009
Из Hibernate 5.2+ наиболее подходящий способ получить диалект:
EntityManager em ...
Session session = em.unwrap(Session.class);
SessionFactory sessionFactory = session.getSessionFactory();
Dialect dialect = ((SessionFactoryImplementor) sessionFactory).getJdbcServices().getDialect();
person
MhagnumDw
schedule
28.03.2018