-1

我是功能即服务的新手。我已经完成了所有相关的设置并得到以下命令命令的输出: fn invoke helloworld-app helloworld-func 输出:你好,世界!

现在我需要使用可以在任何位置运行的 java 客户端代码调用 helloworld-func。可能吗 ?如果是怎么办?

4

1 回答 1

0

在 Oracle RDBMS 中,您可以编译 java 源代码:

CREATE AND COMPILE JAVA SOURCE NAMED helloworld_app_source AS
public class helloworld_app {
  public static String helloworld_func()
  {
    return "Hello, world!";
  }
}

然后你可以将它包装在一个 Oracle 函数中:

CREATE FUNCTION helloworld_func RETURN VARCHAR2
AS LANGUAGE JAVA NAME 'helloworld_app.helloworld_func() return java.lang.String';
/

然后你可以在一个普通的 SQL 语句中调用它(根据任何其他函数):

SELECT helloworld_func() FROM DUAL;

Java 函数将在服务器上运行,但可以从连接到服务器的任何 SQL 客户端调用查询,并将输出返回给该客户端。

于 2020-03-09T12:13:16.397 回答