嗨,这是他们在 spring jdbctemplate 中将 autocommit 设置为 false 的一种方式。
事情不是事务(它们是回滚选项),我想在事务结束时提交查询。
所以而不是
插入——>提交——>回滚。
我想要插入 --> 失败 --> (不提交)。
嗨,这是他们在 spring jdbctemplate 中将 autocommit 设置为 false 的一种方式。
事情不是事务(它们是回滚选项),我想在事务结束时提交查询。
所以而不是
插入——>提交——>回滚。
我想要插入 --> 失败 --> (不提交)。
我不明白你的整个问题,但我可以回答第一部分:有没有办法在 spring jdbctemplate 中将 autocommit 设置为 false?
自动提交配置通常在连接本身上设置。Connection
由Datasource
. _ 由于JdbcTemplate
没有选项可以在它请求到数据源的连接中手动禁用自动提交,因此实现此目的的方法是使用默认设置为的Datasource
连接。autocommit
false
这个使用 apache commons 的示例配置BasicDataSource
实现了:
<bean id="database" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource">
<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
...
<property name="defaultAutoCommit" value="false" />
...
</bean>
</property>
</bean>
我试图抓住你的问题,并且有一些想法可以解决它们。设置autocommit
在false
春天的方式jdbctemplate
:
defaultAutoCommit
属性设置DataSource
为false
。您可以通过编写如下代码来提交或回滚:
jdbcTemplate.getDataSource().getConnection.commit();
jdbcTemplate.getDataSource().getConnection.rollback();