最近,接到任务,需要给工程添加多线程,仔细的学习了各位大虾的方法和研究了一些资料,
我学习到 需要在tasklet层次上把他的属性更改了task-executor属性,让它反射这个类
org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor
为这个类的属性corePoolSize和maxPoolSize设置大小,然后再java中实现具体的需要就可以了
详细 的配置文件如下/demoforhousekeeping/src/applicationContext.xml
<bean:import resource="applicationContext.xml" /> <job id="importProductsMultiThreadedJob"> <step id="readWriteProductsMultiThreadedStep" > <tasklet task-executor="taskExecutor" allow-start-if-complete="true"> <chunk reader="reader" writer="writer" commit-interval="1" /> </tasklet> </step> </job> <bean:bean id="reader" class="com.springbatch.sample.helloworld.reader" name="show" > </bean:bean> <bean:bean id="writer" class="com.springbatch.sample.helloworld.write" ></bean:bean> </bean:beans>
batch <?xml version="1.0" encoding="UTF-8" ?>
<bean:beans xmlns="http://www.springframework.org/schema/batch" xmlns:bean="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/batch http://www.springframework.org/schema/batch/spring-batch-2.1.xsd"> <bean:import resource="applicationContext.xml" /> <job id="importProductsMultiThreadedJob"> <step id="readWriteProductsMultiThreadedStep" > <tasklet task-executor="taskExecutor" allow-start-if-complete="true"> <chunk reader="reader" writer="writer" commit-interval="1" /> </tasklet> </step> </job> <bean:bean id="reader" class="com.springbatch.sample.helloworld.reader" name="show" > </bean:bean> <bean:bean id="writer" class="com.springbatch.sample.helloworld.write" ></bean:bean> </bean:beans>