Как назвать образец helloword fun c с помощью кода java - PullRequest
0 голосов
/ 09 марта 2020

Я новичок в функции как услуга. Я выполнил все соответствующие настройки и получил вывод ниже для команды: fn invoke helloworld-app helloworld-func Вывод: Hello, world!

Теперь мне нужно вызвать helloworld-fun c, используя java код клиента, который может работать в любом месте. Является ли это возможным ? Если да, то как?

1 Ответ

0 голосов
/ 09 марта 2020

В Oracle СУБД вы можете скомпилировать 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 на сервер и вернет вывод этому клиенту.

...