Управление транзакциями Spring устанавливает изоляцию транзакции для Connection , если вы настраиваете изоляцию транзакции не по умолчанию (например, указав ее в аннотации @Transactional). Если вы можете сконфигурировать изоляцию транзакций для соединений, одновременно гарантируя, что никакой другой механизм не изменит изоляцию транзакций для соединений, то вы фактически установите глобальную изоляцию транзакций, используемую приложением.
Например, класс Commons DBCP BasicDataSource определяет свойство defaultTransactionIsolation для установки изоляции транзакции соединений, возвращаемых из пула:
<bean
id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<property name="defaultTransactionIsolation">
<util:constant static-field="java.sql.Connection.TRANSACTION_READ_COMMITTED"/>
</property>
</bean>