--oracle存储过程代码create or replace procedure out_cursor(res out sys_refcursor , in_para in number) is begin open res for select * from c where c.c = in_para; end out_cursor; /
--Java代码
package com.pro.demo; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; import com.pro.util.JDBCUtil; public class Demo { public static void main(String[] args) throws SQLException { Connection conn = JDBCUtil.getConnection(); CallableStatement cstmt = conn.prepareCall("{call out_cursor(?,?)}"); cstmt.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR); cstmt.setInt(2, 1); cstmt.execute(); ResultSet rs = (ResultSet)cstmt.getObject(1); while(rs.next()) { System.out.print(rs.getString(1)); System.out.print("-----"); System.out.println(rs.getString(2)); } } }