0

直到最近,我们还使用 Oracle 序列来生成表的 ID。现在已更改,现在由 Oracle 函数计算新 ID。这意味着我的应用程序需要进行更改以适应新情况。该应用程序是一个 Spring/Hibernate webApp,它访问 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 函数的结果作为 ID 的新值的解决方案是什么?

非常感谢您的帮助,在此先感谢。

4

1 回答 1

1

你能写一个Java类来获取Oracle函数的值吗?如果是这样,您应该能够将该 Java 类定义为您的<generator class>

编辑:要从 Java 调用 Oracle 函数,看看这是否适合您: Call Java Oracle Functions From Java program并查看Java CallableStatement API

于 2008-11-21T14:45:47.757 回答