public String getKanriData(int kanri_no) throws Exception {
StringBuffer sql = new StringBuffer();
sql.append("{? = call COMMON.GetKanriData(?)}");
CallableStatement cstmt = DBHelper.createCallableStatement(sql.toString());
cstmt.registerOutParameter(1, OracleTypes.VARCHAR);
cstmt.setInt(2, kanri_no);
cstmt.execute();
String kanri_data = cstmt.getString(1);
cstmt.close();
return kanri_data;
}
对比普通的调用过程:
public Vector<Map<String, String>> searchProduct(String item_no,String color_cd,String size_cd,String strCo_no) throws Exception {
ArrayList<Object> listParams = new ArrayList<Object>();
String strCallProc = "{call SL070.searchProduct(?,?,?,?,?)}";
listParams.add(DBHelper.createSQLParamVarchar2(strCo_no)); //会社No
listParams.add(DBHelper.createSQLParamVarchar2(item_no)); //販売商品CD
listParams.add(DBHelper.createSQLParamVarchar2(color_cd)); //販売商品カラーCD
listParams.add(DBHelper.createSQLParamVarchar2(size_cd)); //販売商品サイズCD
listParams.add(DBHelper.createSQLOutParamCursor("LIST"));
HashMap result = DBHelper.executeCallableStatement(strCallProc, listParams);
Vector<Map<String, String>> list = (Vector<Map<String,String>>)result.get("LIST");
return list;
}