你的位置:首页 > Java教程

[Java教程]SpringMVC整合TaskExecutor线程池的配置/使用


一、配置jdbc.properties添加:

#------------ Task ------------task.core_pool_size=5task.max_pool_size=50task.queue_capacity=1000task.keep_alive_seconds=60

二、配置Spring的applicationContext.

  <bean id="taskExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">    <!-- 核心线程数 -->       <property name="corePoolSize" value="${task.core_pool_size}" />    <!-- 最大线程数 -->     <property name="maxPoolSize" value="${task.max_pool_size}" />    <!-- 队列最大长度 -->    <property name="queueCapacity" value="${task.queue_capacity}" />    <!-- 线程池维护线程所允许的空闲时间,默认为60s -->    <property name="keepAliveSeconds" value="${task.keep_alive_seconds}" />  </bean>  <!-- 注解式 -->  <task:annotation-driven />

三、在实现层Impl声明并注入:

  @Resource(name = "taskExecutor")  private TaskExecutor taskExecutor;

四、在方法里调用:

    try {      taskExecutor.execute(new Runnable() {        public void run() {          //这里编写处理业务代码                  }      });    } catch (Exception e) {      e.printStackTrace();    }