sql >> Base de Datos >  >> RDS >> Oracle

Concepto:Cree un programa Java y cárguelo en Oracle DB:la función Wrapper llama a la función Java con retorno

Sí, debe llamar a un método estático, pero dentro del método estático puede crear una instancia de la clase y llamar a métodos no estáticos:

create or replace java source named "com.test.Example" AS
public class Example {
  public String getHelloWorld(
    final String hello
  ) {
    return hello + "world"
  }

  public static String getStaticHelloWorld(
    final String hello;
  ){
    final Example e = new Example();
    return e.getHelloWorld( hello );
  }
}
/

CREATE FUNCTION get_hello_world(i_string VARCHAR2) RETURN VARCHAR2 AS
  LANGUAGE java name 'com.test.Example.getStaticHelloWorld(
      java.lang.String
    ) return java.lang.String';