Насколько я понял, DataSourceTransactionManager связывает JDBC-соединение из указанного DataSource с текущим потоком, обеспечивая по одному привязанному к потоку Connection для каждого DataSource. Если это пул соединений, потребуется одно из доступных соединений.
После этого, если я использую JdbcTemplate внутри транзакции, он будет перехватывать соединение, связанное с DataSourceTransactionManager. Я правильно понимаю механизм? Есть ли какие-либо требования для определения бина менеджера транзакций (т. Е. Синглтона)?