Stored procedures JdbcTemplate调用存储过程调用

Stored procedures JdbcTemplate调用存储过程调用,stored-procedures,java-8,jdbctemplate,Stored Procedures,Java 8,Jdbctemplate,我知道这很容易使用JdbcTemplate调用存储过程调用,但这里的情况不同。我想调用一个不返回任何内容的存储过程函数。我尝试了下面的代码,效果很好,但我们没有以任何方式使用RowCountCallbackHandler,这是一种浪费 jdbcTemplate.query("select * from status_update(?) ", new Object[]{statusId}, new int[]{Types.INTEGE

我知道这很容易使用
JdbcTemplate
调用存储过程调用,但这里的情况不同。我想调用一个不返回任何内容的存储过程函数。我尝试了下面的代码,效果很好,但我们没有以任何方式使用
RowCountCallbackHandler
,这是一种浪费

jdbcTemplate.query("select * from status_update(?) ",
                new Object[]{statusId},
                new int[]{Types.INTEGER}, new RowCountCallbackHandler());
我所看到的是下面的东西,显然是不可用的

jdbcTemplate.query("select * from status_update(?) ",
                new Object[]{statusId},
                new int[]{Types.INTEGER});

我想知道我是否缺少使用JdbcTemplate执行无效存储过程的任何其他方法

您可以使用
SimpleJdbcCall
类。这重载了
execute()
方法,从中可以满足您的需要

SimpleJdbcCall spCall=newsimplejdbccall(您的jdbc模板);
spCall.withProcedureName(SP_名称);
执行(inParamsAsMap);
这将完成执行。如果您的SP具有输出参数,则可以执行以下操作

Map output=spCall.execute(inParamsAsMap);