我有一个存储过程返回值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"));

07-21 14:46