/** * call SP * * @param spName SP Name * @param params SqlParameter/SqlOutParameter/SqlInOutParameter obj array * @param inParams SqlParameter values * @return result map */ public Map<String, Object> callSPForMap( String spName, SqlParameter[] params, Map<String, ?> inParams) { int idx = spName.indexOf("."); String schemaName = null; if (idx != -1) { schemaName = spName.substring(0, idx); spName = spName.substring(idx + 1); } SimpleJdbcCall jdbcCall = new SimpleJdbcCall(dataSource).withProcedureName(spName).declareParameters(params); if (schemaName != null) { jdbcCall.setSchemaName(schemaName); } jdbcCall.setAccessCallParameterMetaData(false); Map<String, Object> out = jdbcCall.execute(inParams); return out; } // ;