2007-09-05
spring实现定时任务之Quartz 2
继承spring 的 QuartzJobBean
SimpleJob.java
public class SimpleJob extends QuartzJobBean
{
public int flag;
@Override
protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException
{
System.out.println(" SimpleJob 执行" + flag);
}
public int getFlag()
{
return flag;
}
public void setFlag(int flag)
{
this.flag = flag;
}
}
{
public int flag;
@Override
protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException
{
System.out.println(" SimpleJob 执行" + flag);
}
public int getFlag()
{
return flag;
}
public void setFlag(int flag)
{
this.flag = flag;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
<bean name="quartzDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.commonjob.SimpleJob</value>
</property>
<property name="jobDataAsMap">
<map>
<entry key="flag">
<value>1</value>
</entry>
</map>
</property>
</bean>
<bean name="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="quartzDetail"/>
<!-- 10 seconds -->
<property name="startDelay">
<value>2000</value>
</property>
<!-- repeat every 50 seconds -->
<property name="repeatInterval">
<value>2000</value>
</property>
</bean>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="simpleTrigger"/>
</list>
</property>
</bean>
</beans>
jobClass 指定job 类,jobDataAsMap 可以注入参数。
运行:主函数加载 spring 配置文件即可:
public static void main(String[] args)
{
ApplicationContext cxt=new FileSystemXmlApplicationContext("config/SimpleJob.xml");
}
{
ApplicationContext cxt=new FileSystemXmlApplicationContext("config/SimpleJob.xml");
}
在web中应用 只要在web.xml中加载配置文件即可。







评论排行榜