Oracle 에서 입력된 stored procedure 를 java에서 실행해서 결과를 얻고 싶으시다면
Statement 대신에 CallableStatement 라는걸 쓰시면 됩니다.
그 뒤에는 어차피 insert, update 같은 것들과 같이 성공 또는 실패, 성공시 몇개가 성공했는지,
query 인 경우에는 ResultSet 받아서 fetch 하면서 값 뽑아서 쓰시면 됩니다.
Connection 까지는 똑같고 그 다음부터가 약간 다른데 대충 아래와 같습니다.
// 위에서 JDBC 드라이버 잡고 Connection 까지 맺은 상태...
CallableStatement cs = con.prepareCall("{call myStoredProcedure(?,?,?)}");
cs.setInt(1,2);
cs.registerOutParameter(2, java.sql.Types.VARCHAR);
cs.registerOutParameter(3, java.sql.Types.INTEGER);
cs.execute();
System.out.println("*name : "+ cs.getString(2) +"*age : "+ cs.getInt(3));
cs.close();
con.close();
- 출처 : 네이버 지식인 -