Как использовать функцию Oracle для идентификатора в Hibernate

До недавнего времени мы использовали последовательности Oracle для генерации идентификаторов таблиц. Теперь это изменено, новый идентификатор теперь вычисляется функцией Oracle. Это означает, что мое приложение нуждается в изменении, чтобы приспособиться к новой ситуации. Приложение представляет собой веб-приложение Spring / Hibernate, которое обращается к базе данных Oracle. Это было настроено в hbm.xml следующим образом:

<class name = "TableHib" table = "TABLENAME" >
    <id name = "Id" type = "java.lang.Long">
        <column name = "ID" precision = "22" scale = "0" />
        <generator class = "sequence">
            <param name = "sequence">SEQTABLE</param>
        </generator>
    </id>

Конечно, вопрос: как можно использовать результат функции Oracle для нового значения идентификатора?

Помощь очень ценится, заранее спасибо.

Гм ... последовательности существуют не просто так. Почему вы заменяете их функциональность функцией и что она делает?

cletus 21.11.2008 17:31
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
1 771
1

Ответы 1

Можете ли вы написать класс Java, который может получать значение функции Oracle? Если это так, вы сможете определить этот класс Java как свой <generator class>.

Редактировать: Чтобы вызвать функцию Oracle из Java, посмотрите, работает ли это для вас: Вызов функций Java Oracle из программы Java и видим API Java CallableStatement

Другие вопросы по теме