Я хотел бы передать передачу типа объекта plsql Java. Java получит этот объект, и после модификации я хочу вернуть тот же объект plsql.
Основная программа будет вызывать из plsql в Java, а ожидаемый результат возврата из Java - в тот же объект в plsql. Могу я узнать, есть ли способ?
Ниже приведен код, который я пробую.
Может ли тип объекта plsql напрямую указывать на метод / функцию java как параметр in и out?
Я попытался передать тип объекта plsql с помощью Struct, он может скомпилировать программу. Однако я не знаю, как Java может принять этот объект и преобразовать его в объект Java.
Что-то вроде примера ниже. Большое тебе спасибо
CREATE OR REPLACE TYPE Address AS OBJECT
( street VARCHAR2(30),
city VARCHAR2(20)
);
create or replace package body TYPE_ADD_TEST is
FUNCTION Test_ADD(in_address IN address
) RETURN address IS
LANGUAGE JAVA
NAME 'TestPrg.TestAddress(java.sql.Struct
) return java.sql.Struct';
end TYPE_ADD_TEST;
create or replace and compile java source named testprg as
import java.util.*;
import java.io.*;
import java.sql.*;
public class TestPrg{
public static String TestAddress(Struct TestAddress) {
Address testAdd = (Address) TestAddress;
// Address testAdd = new Address("s","c");
return testAdd.street;
}
}
create or replace and compile java source named address as
import java.util.*;
import java.io.*;
public class Address {
public String street ;
public String city;
public Address() {}
public Address(String a, String b) {
street = "java street";
city = "java city";
}
}
Большое тебе спасибо
Большое спасибо за информацию. Я изменил свой код Java и класс объекта Java. Метод getAttributes () может получить значение объекта plsql в методе java. все еще изо всех сил пытается передать обратно тип объекта java напрямую в качестве выходного параметра в plsql.




Вы хотите прочитать это: stefan-armbruster.com/images/downloads/IT/e10588.pdf - на странице 15 он обсуждает, как создавать классы Java, которыми можно обмениваться с Oracle (расширять SQLData), или как просто использовать Struct: Структуры имеют метод getAttributes (), который возвращает массив значений атрибутов.