使用Spring TransactionTemplate取消当前事务

时间:2011-09-02 10:07:51

标签: spring jdbc transactions connection-pooling bonecp

我正在使用连接池和Spring TransactionTemplate。如果要先关闭连接池,则必须将所有连接都返回到池中,这意味着必须调用connection.close()。我有一个线程使用TransactionTemplate进行一些查询,另一个线程想要在连接池上调用一些shutdown方法,但在此之前首先必须告诉TransactionTemplate关闭所有连接(实际上只返回池中。)

如何在Spring中立即调用close用于连接?

1 个答案:

答案 0 :(得分:0)

如果你和Spring一起使用Hibernate,请使用:

hibernate.connection.release_mode=after_transaction

如果您想在交易后立即释放连接。

hibernate.connection.release_mode=after_statement

如果要在每个语句后释放连接

这两个设置是我知道的唯一方法,可以使用过的连接比默认行为更快地释放。至少就Hibernate而言。如果您正在使用其他图书馆,请说明哪个。