一、定义包头
CREATE OR REPLACE PACKAGE TEST_PACKAGE is
type testResultSet is
ref cursor;
end test_package;
in string, resultSet out test_package.testResultSet)
as
Begin
open resultSet for
select * from test;
End;
try {
CallableStatement pst = cnn.prepareCall("call
TEST_PROCEDURE(?,?)");
pst.setString(1, "11");
pst.registerOutParameter(2, oracle.jdbc.OracleTypes.CURSOR);
pst.execute();
ResultSet set =
(ResultSet)pst.getObject(2);
while (set.next())
{
System.out.println(set.getString(1));
}
pst.close();
pst = null;
} catch
(Exception e) {
e.printStackTrace();
}
}
二、编写存储过程
CREATE OR REPLACE PROCEDURE "RM"."TEST_PROCEDURE" (templateid
三、编写JAVA函数调用存储过程
public static void getValue() {
try {
CallableStatement
pst = cnn.prepareCall("call TEST_PROCEDURE(?,?)");
pst.setString(1, "11");
pst.registerOutParameter(2,
oracle.jdbc.OracleTypes.CURSOR);
pst.execute();
ResultSet set = (ResultSet)pst.getObject(2);
while (set.next())
{
System.out.println(set.getString(1));
}
pst.close();
pst = null;
} catch
(Exception e) {
e.printStackTrace();
}
}
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29063131/viewspace-1130531/ ,如需转载,请注明出处,否则将追究法律责任。