我有一个存储过程返回值0或1
CREATE OR REPLACE PROCEDURE "MYPROC" (KEY in NUMBER,
VAR out NUMBER)
...
我使用以下代码在hava中调用过程(运行正常):
SimpleJdbcCall simpleJdbcCall = new SimpleJdbcCall(DataSource);
simpleJdbcCall.withProcedureName("CPF_DTW.MYPROC");
simpleJdbcCall.withoutProcedureColumnMetaDataAccess();
simpleJdbcCall.declareParameters(new SqlParameter("KEY", Types.NUMERIC));
Map<String, Object> parameters = new HashMap<String, Object>(2);
parameters.put("KEY", actionKey);
simpleJdbcCall.execute(parameters);
现在,在执行proc之后,我需要访问并获取procudere的值,如输出参数VAR中那样,您能帮我吗?
最佳答案
SimpleJdbcCall的执行返回一个映射,其中包含输出参数的键值对。
例如,您可以通过以下方式检索输出参数VAR:
Map outputMap = simpleJdbcCall.execute(parameters);
System.out.println((String)outputMap.get("VAR"));