就是通过JDBC的连接数据库,调用存储过程方式,只是需要把返回参数给标注一下。以下是在网上找的示例代码:
Class c = Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL","HH","HH");
CallableStatement cstmt = conn.prepareCall("{call TEST_CURSOR.TEST(?)}");
cstmt.registerOutParameter(1,oracle.jdbc.OracleTypes.CURSOR); //输出参数需要注册
cstmt.execute();
ResultSet rs = (ResultSet)cstmt.getObject(1); //注意是getObject,没有getCursor这种方法
while(rs.next())
{
System.out.println("id:"+rs.getInt(1)+" name:"+rs.getString(2)+" grade:"+rs.getInt(3));
}
摘抄至:
http://blog.chinaunix.net/uid-8824503-id-2453541.html