Tôi đã thiết lập thành công dự án Spring Batch hướng dẫn. Tôi thực sự muốn biết nếu nó có thể làm cho nó đa luồng ở "cấp độ mùa xuân". Ý tưởng cơ bản về những gì tôi muốn là tạo một danh sách các nhiệm vụ hoặc các bước nhiệm vụ và cho phép chúng được chọn và làm việc bởi các luồng độc lập, lý tưởng nhất là trong một hồ bơi giới hạn số chủ đề 'n'.Làm thế nào để thiết lập đa luồng trong Spring Batch?
Điều này có khả thi không? Nếu vậy, làm thế nào? Ai đó có thể hướng dẫn tôi đến điểm đó từ nơi tôi đang ở?
Dự án đơn giản tôi có được từ hướng dẫn này here. Về cơ bản nó có các nhiệm vụ khác nhau để in ra một thông báo trên màn hình.
Dưới đây là tập tin của tôi hiện tại simpleJob.xml, chứa các chi tiết công việc:
<import resource="applicationContext.xml"/>
<bean id="hello" class="helloworld.PrintTasklet">
<property name="message" value="Hello"/>
</bean>
<bean id="space" class="helloworld.PrintTasklet">
<property name="message" value=" "/>
</bean>
<bean id="world" class="helloworld.PrintTasklet">
<property name="message" value="World!\n"/>
</bean>
<bean id="taskletStep" class="org.springframework.batch.core.step.tasklet.TaskletStep" >
<property name="jobRepository" ref="jobRepository"/>
<property name="transactionManager" ref="transactionManager"/>
</bean>
<bean id="simpleJob" class="org.springframework.batch.core.job.SimpleJob">
<property name="name" value="simpleJob" />
<property name="steps">
<list>
<bean parent="taskletStep">
<property name="tasklet" ref="hello"/>
</bean>
<bean parent="taskletStep">
<property name="tasklet" ref="space"/>
</bean>
<bean parent="taskletStep">
<property name="tasklet" ref="world"/>
</bean>
</list>
</property>
<property name="jobRepository" ref="jobRepository"/>
</bean>
My appContext chứa đậu kho công việc (SimpleJobRepository
), quản lý giao dịch (ResourceLessTransactionManager
) và phóng công việc (SimpleJobLauncher
). Tôi có thể cung cấp mã này nếu muốn, tôi chỉ không muốn bog xuống bài viết này với tấn XML.
Cảm ơn rất nhiều vì đã giúp đỡ!