我们尝试使用下面的代码使用JDBCTemplate调用存储过程,有时调用成功,而有时未发生,并且返回缓存的值。我们还在存储过程中添加了记录器,以在故障情况下进行检查,但未打印日志。我们正在使用Oracle 12C。关于为什么不调用该程序的帮助。这是间歇性地发生
Connection conn = null;
CallableStatement callableSt = null;
Map<String, String> resultMap = new HashMap<String, String>();
long statusResponseCode = 0;
String statusResponseMsg = null;
try {
conn = jdbcTemplate.getDataSource().getConnection();
callableSt = conn.prepareCall("{call CHECK_CARD_STATUS(?,?,?)}");
callableSt.setString(1, hashCardNumber);
callableSt.registerOutParameter(2, OracleTypes.NUMBER);
callableSt.registerOutParameter(3, OracleTypes.VARCHAR);
callableSt.executeUpdate();
statusResponseCode = callableSt.getLong(2);
statusResponseMsg = callableSt.getString(3);