我正在使用Spring jdbcTemplate作为我的DAO层。我至少有两个sql语句,我想在一个查询中执行一次命中数据库:
Binding
现在我在@Transactional里面这样做:
ValidationAttribute
我知道在简单的jdbc中有一个addBatch()方法,但是如何使用jdbcTemplate在一个批处理中执行这两个sql语句? jdbcTemplate中是否有addBatch()等效项?
提前致谢。
答案 0 :(得分:5)
您可以连接两个查询并添加;
作为分隔符,但这不会使这些查询“原子”。换句话说,它们不会像您想象的那样立即执行,而是一个接一个地执行,就像您将逐个执行2个模板一样 - 这里没有区别。
为了保证操作的原子性,您必须使用事务。事务可以使查询所做的所有更改在事务提交时立即应用。