java定时器
来源:互联网 发布:火眼金睛软件怎么安装 编辑:程序博客网 时间:2024/09/21 06:37
1、首先在导入Spring所有包的前提下还要导入一个定时器包:quartz-1.6.2.jar,然后在写一个要执行的任务类,如下:
public class Prison {
publicPrison() {}
publicvoid execute() {
List<Into_Prison> prisonlist = newArrayList<Into_Prison>();
prisonlist=into_prisonService.getAll();
if(prisonlist.size()!=0 ){
for(Into_Prison prison :prisonlist){
if(Integer.parseInt(prison.getIp_Leftday())>0){
prison.setIp_Leftday(String.valueOf(Integer.parseInt(prison.getIp_Leftday())-1));
into_prisonService.save(prison);
}else{
prison.setIp_Leftday("0");
into_prisonService.save(prison);
}
}
}
//System.out.println("=======执行了吗============");
}
privateInto_PrisonService into_prisonService;
publicInto_PrisonService getInto_prisonService() {
returninto_prisonService;
}
publicvoid setInto_prisonService(Into_PrisonService into_prisonService) {
this.into_prisonService= into_prisonService;
}
}
2、然后在Spring中的配置文件如下:
<bean id="prison" class="com.prison.action.Prison">
<propertyname="into_prisonService" ref="into_prisonService"/>
</bean>
以上配置为给任务类的注入
<beanid="saveProjectJob"class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref local="prison" />
</property>
<property name="targetMethod">
<value>execute</value>
</property>
</bean>
指定任务类中执行的方法:execute,把任务类的注入给Spring.
<beanid="timeTrigger"class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref local="saveProjectJob" />
</property>
<property name="cronExpression">
<value>59 59 23 * * ?</value>
</property>
</bean>
设置定时器的时间,59 59 23 * * ?为在每天的23:59:59执行
<beanid="scheduler"class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="timeTrigger"/>
</list>
</property>
</bean>
执行定时器
以上定时器主要完成的是把数据库里某个字段的数据过一天就减少一天。
需要注意的是:
1、在<Beans>中不能够设置default-lazy-init="true",否则定时任务不触发,如果不明 确指明default-lazy-init的值,默认是false。
2、在<Beans>中不能够设置default-autowire="byName"的属性,否则后台会报 org.springframework.beans.factory.BeanCreationException错误,这样就 不能通过Bean名称自动注入,必须通过明确引用注入。
- [Java--定时器]--定时器举例
- JAVA定时器
- java 定时器
- JAVA定时器
- java定时器
- JAVA定时器
- Java定时器
- JAVA定时器
- JAVA定时器
- java定时器
- Java定时器
- JAVA 定时器
- java定时器
- java定时器
- java定时器
- java定时器
- java定时器
- java 定时器
- 水平居中方法 总结
- Sed 替换字符串
- Linux下分割与合并文件的方法
- XmlResourceParser调试代码
- 设置ListBox高度
- java定时器
- Ubuntu下进程管理工具
- windows Phone 7 保存图片到MediaLibrary
- 垂直居中 总结
- java对象转换成json 字符串的方法
- ArcSDE服务启动错误及解决方法
- Linux进程间通信详解(1)
- 在注册表文件中怎么获得网页url
- font-weight