如何在Spring中运行计划任务?
How to run scheduled tasks in Spring?
我正在寻找有关如何 运行 在 spring 中安排任务的示例。我目前正在使用 xml 配置和 spring 3.2。我找到了他们的计划任务文档页面,但想要一个更简单的示例来开始。 Here is a link to the docs
我在哪里配置调度 bean?我希望他们每天 运行,一次只完成一项任务。
将以下内容添加到您的 spring xml 中:
<task:annotation-driven/>
创建 class :
import javax.inject.Named;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
@Named("funBean")
public class FunBean {
private static final Logger slf4jLogger = LoggerFactory.getLogger(FunBean.class);
@Scheduled(fixedDelay = 5000)
public void doSomething() {
slf4jLogger.info("I am working");
}
}
这应该让你 going.You 可以在你的 xml 文件中配置有趣的 bean 定义,就像任何 spring bean 一样。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
<bean id="worker" class="net.bitegroup.smart.Worker">
</bean>
<bean id="scheduledTask" class="org.springframework.scheduling.concurrent.ScheduledExecutorTask">
<property name="delay" value="1000" />
<property name="period" value="2000" />
<property name="runnable" ref="worker" />
</bean>
<bean id="scheduledThread" class="org.springframework.scheduling.concurrent.ScheduledExecutorFactoryBean">
<property name="scheduledExecutorTasks" ref="scheduledTask" />
</bean>
</beans>
我正在寻找有关如何 运行 在 spring 中安排任务的示例。我目前正在使用 xml 配置和 spring 3.2。我找到了他们的计划任务文档页面,但想要一个更简单的示例来开始。 Here is a link to the docs
我在哪里配置调度 bean?我希望他们每天 运行,一次只完成一项任务。
将以下内容添加到您的 spring xml 中:
<task:annotation-driven/>
创建 class :
import javax.inject.Named;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.Scheduled;
@Named("funBean")
public class FunBean {
private static final Logger slf4jLogger = LoggerFactory.getLogger(FunBean.class);
@Scheduled(fixedDelay = 5000)
public void doSomething() {
slf4jLogger.info("I am working");
}
}
这应该让你 going.You 可以在你的 xml 文件中配置有趣的 bean 定义,就像任何 spring bean 一样。
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
<bean id="worker" class="net.bitegroup.smart.Worker">
</bean>
<bean id="scheduledTask" class="org.springframework.scheduling.concurrent.ScheduledExecutorTask">
<property name="delay" value="1000" />
<property name="period" value="2000" />
<property name="runnable" ref="worker" />
</bean>
<bean id="scheduledThread" class="org.springframework.scheduling.concurrent.ScheduledExecutorFactoryBean">
<property name="scheduledExecutorTasks" ref="scheduledTask" />
</bean>
</beans>