Вы можете определить эти источники данных в любом выбранном вами весеннем файле, так что да:
src/main/resources/db/source-datasource.xml
src/main/resources/db/target-datasource.xml
будетdo.
Допустим, вы назвали свои bean-компоненты источника данных как sourceDataSource
и targetDataSource
.Вы говорите Spring Batch (или, в данном случае, просто Spring) использовать их через «импорт» и «внедрение зависимостей».
Импорт
Вы можете организовать свои весенние конфигурации так, как это нужно.Вы подходите лучше всего, но, поскольку у вас уже есть launch-context.xml
, для того, чтобы вышеуказанные источники данных были видны, вам необходимо импортировать их в launch-context.xml
как:
<import resource="classpath:db/source-datasource.xml"/>
<import resource="classpath:db/target-datasource.xml"/>
Внедрение / Использование
<bean id="sourceReader" class="org.springframework.batch.item.database.JdbcCursorItemReader">
<property name="dataSource" ref="sourceDataSource" />
<!-- other properties here -->
</beans:bean>
<bean id="targetWriter" class="org.springframework.batch.item.database.JdbcBatchItemWriter">
<property name="dataSource" ref="targetDataSource" />
<!-- other properties here -->
</beans:bean>
где sourceReader
и targetWriter
- бобы, которые вы добавляете в свои шаги.