如何从JdbcTemplate获取受影响的行数?

时间:2015-01-12 12:43:43

标签: java spring spring-data

我正在使用spring JdbcTemplate来执行sql查询:

JdbcTemplate template = new JdbcTemplate(ds);
template.execute(sqlInsert); //returns void

我如何得到受影响的行数,因为execute()方法返回void?

2 个答案:

答案 0 :(得分:12)

调用JdbcTemplate的{​​{3}}方法。它将为您提供受影响的行数作为返回值。

  

更新

public int update(PreparedStatementCreator psc)
       throws DataAccessException
     

从界面复制的说明:JdbcOperations

     

发出单个SQL更新操作(例如   插入,更新或删除语句)使用   PreparedStatementCreator提供SQL和任何必需的参数。   PreparedStatementCreator可以直接实现,也可以   通过PreparedStatementCreatorFactory配置。

     

指定人:
  在界面JdbcOperations

中更新      

<强>参数:
  psc - 提供SQL和任何必要参数的对象

     

<强>返回:
  受影响的行数

     

<强>抛出:
  DataAccessException - 如果发布更新有任何问题

     

另见:
  PreparedStatementCreatorFactory

答案 1 :(得分:3)

对于这种情况,您可以使用JdbcTemplate.update()。这将返回更新或删除的行数。