application
<bean name="systemJob" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass" value="class路径" >
</property>
</bean>
<bean id="systemTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail" ref="systemJob" />
<property name="startDelay" value="10000" />
<property name="repeatCount" value="0" />
</bean>
<bean id="schedulerFactoryBean" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="systemTrigger" />
</list>
</property>
<property name="schedulerContextAsMap">
<map>
<!-- spring 管理的service需要放到这里,才能够注入成功 -->
<description>schedulerContextAsMap</description>
<entry key="companyService" value-ref="companyService"/>
</map>
</property>
<property name="autoStartup" value="true"/>
<property name="schedulerName" value="cronScheduler" />
</bean>
java
public class SystemTimer implements Job {
public void execute(JobExecutionContext context) {
try {
//获取service
SchedulerContext skedCtx = context.getScheduler().getContext();
CompanyService companyService = (CompanyService)skedCtx.get("companyService");
List<Company> list= companyService.findAll();
//得到所有company对象
if(list!=null&&list.size()!=0){
//如果存在就初始化系统参数
SystemProperty.init(list.get(0));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}