Как создать и прочитать последовательность в Hibernate? - PullRequest
1 голос
/ 22 октября 2009

Мне нужно использовать последовательность, чтобы получить уникальное значение. Рабочий код использует postgres, но я хотел бы получить к нему доступ через Hibernate, чтобы я мог проверить это с помощью HSQLDB.

Как я могу создать и прочитать последовательность в Hibernate?

1 Ответ

2 голосов
/ 22 октября 2009

Посмотрите на Dialect (https://github.com/hibernate/hibernate-orm/blob/5.0/hibernate-core/src/main/java/org/hibernate/dialect/Dialect.java).

Содержит код, определяющий, поддерживает ли ваша база данных последовательности (supportsSequences()), и методы их создания и удаления ('getCreateSequenceString (String sequenceName)').)

К сожалению, нет никакого чистого способа получить диалект от сессии; см. Как получить Hibernate диалект во время выполнения

[СТАРЫЙ ответ]

Вы можете попытаться повторно использовать код из HibernateDialect, но основной API этого не предлагает. Лучше всего, вероятно, заключить это в интерфейс, а затем использовать разные реализации в зависимости от вашего диалекта.

...