Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate和Oracle本机函数_Java_Oracle_Hibernate - Fatal编程技术网

Java Hibernate和Oracle本机函数

Java Hibernate和Oracle本机函数,java,oracle,hibernate,Java,Oracle,Hibernate,我有一个映射到外部oracle表的实体,该表是我的应用程序的主要数据源之一。该实体是使用hibernate建模的 oracle表现在定义了一个复杂函数,用于计算一些特殊值。我需要以某种方式调用此函数-几乎作为实体上的另一个访问器 您认为合并此函数调用的最佳方式是什么,以便我可以保持对实体的相对正常的hibernate访问?您可以使用HQL的存储过程直接调用此函数。当然,除非您必须为表中的每个条目调用此函数。但是如果您在同一个hibernate会话中执行此操作,只要您不同时执行多个调用,就应该可以

我有一个映射到外部oracle表的实体,该表是我的应用程序的主要数据源之一。该实体是使用hibernate建模的

oracle表现在定义了一个复杂函数,用于计算一些特殊值。我需要以某种方式调用此函数-几乎作为实体上的另一个访问器


您认为合并此函数调用的最佳方式是什么,以便我可以保持对实体的相对正常的hibernate访问?

您可以使用HQL的存储过程直接调用此函数。当然,除非您必须为表中的每个条目调用此函数。但是如果您在同一个hibernate会话中执行此操作,只要您不同时执行多个调用,就应该可以在不影响性能的情况下正常工作。

我有一个使用@Formula注释的解决方案

为了保持与hibernate提供的数据库的解耦,我将依赖Oracle来调用此函数,使用触发器或视图


这种方法的主要优点是它与Hibernate实现完全无缝。

我需要为表中的每个条目调用它。这个实体从头到尾都在处理,所以最好有一种方法将函数调用作为自然读取的一部分。sql是这样的:从DataTable中选择FIELD1、FIELD2、FUNCTION(FIELD1)对于需要参数的函数,您将如何做到这一点?