Spring事务没有设置连接readOnly false

时间:2017-03-17 00:10:17

标签: java spring jpa

我有一个设置,我使用OpenEntityManagerInViewFilter从我的数据库启用非事务性读取。为了在主/从设置中将这些读取发送到从设备,我将连接池设置为默认情况下将连接设置为只读。我的问题是,即使使用@Transactional注释的方法都是读写的,连接也不会设置为读写,并且事务将被发送到只读服务器。这是Spring中的预期行为和/或我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

虽然我在CP30池中默认将只读标志设置为true,但面临同样的问题。您可以通过ConnectionCustomizer界面执行此操作。

我猜春天假设默认的只读值为false,因此不会对其进行任何更改。请参见DataSourceUtils.prepareConnectionForTransaction

不知道这是否应该被视为一个错误。