CallableStatement調用帶參存儲過程

con = this.getConnection();

   cs = con.prepareCall("{call PROC_TEST(?,?,?,?)}");
   cs.setInt(1, inParam1);
   cs.setInt(2, inParam2);
   cs.setString(3, inParam3);
   cs.registerOutParameter(4, OracleTypes.CURSOR);//存儲過程中返回遊標

   cs.execute();
   rs = (ResultSet) cs.getObject(4);//返回參數,注意要與設置返回參數的下標一致

   ResultSetMetaData md = rs.getMetaData();
   int columnCount = md.getColumnCount();

   while (rs.next()) {
    Map rowMap = new HashMap(columnCount);
    for (int i = 1; i <= columnCount; i++) {
     rowMap.put(md.getColumnName(i), rs.getObject(i));
    }
    returnList.add(rowMap);

   }

發佈了25 篇原創文章 · 獲贊 0 · 訪問量 9091
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章