/* SQL script needed */

import java.sql.*;
import java.io.*;
import oracle.jdbc.driver.*;

class RefCur
{
public static void main (String args [])
throws SQLException
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());

Connection conn =
DriverManager.getConnection ("jdbc:oracle:thin:@127.0.0.1:1521:athena", "scott", "tiger");

CallableStatement call =
conn.prepareCall ("{ call emp_data.get_staff (?,?)}");

call.setInt (1, 20);
call.registerOutParameter (2, OracleTypes.CURSOR);
call.execute ();
ResultSet rset = (ResultSet)call.getObject (2);

while (rset.next ())
{
System.out.print (rset.getString ("EMPNO"));
System.out.print (" ");
System.out.print (rset.getString ("ENAME"));
System.out.print (" ");
System.out.print (rset.getString ("JOB"));
System.out.print (" ");
System.out.print (rset.getString ("DNAME"));
System.out.print (" ");
System.out.println (rset.getString ("LOC"));
}

rset.close();
call.close();
conn.close();

}
}