Hibernate和数据库函数与包

时间:2017-03-22 13:42:27

标签: java database oracle hibernate function

我在oracle中调用一个类似这样的函数:FOO.PACKAGE_NAME.function(param)并且使用session.getNamedQuery("alias")...它可以正常工作。

现在我希望能够调用同一个函数,但在内部使用一些Hibernate功能将FOO.PACKAGE_NAME.function(param)更改为PACKAGE_NAME.function(param)

有可能吗?

由于

1 个答案:

答案 0 :(得分:0)

如果FOO是数据库架构,那么您可以尝试像这样设置全局架构:

<property name="hibernate.default_schema" value="FOO"/>

现在,正如我explained in this article,您可以使用{h-schema}占位符引用默认架构:

@NamedNativeQuery(
    name = "my_query",
    query =
        "select {h-schema}PACKAGE_NAME.function( :param ) " +
        "from dual ",
    resultClass = MyResult.class
)