前言
本节我们将学习一下@PostConstruct的用法。
概述
@PostContruct是spring框架的注解,在方法上加该注解会在项目启动的时候执行该方法,也可以理解为在spring容器初始化的时候执行该方法。
/**
* 项目启动时,初始化定时器
*/
@PostConstruct
public void init()
{
List<Job> jobList = jobDao.selectJobAll();
for (Job job : jobList)
{
CronTrigger cronTrigger = ScheduleUtils.getCronTrigger(scheduler, job.getJobId());
// 如果不存在,则创建
if (cronTrigger == null)
{
ScheduleUtils.createScheduleJob(scheduler, job);
}
else
{
ScheduleUtils.updateScheduleJob(scheduler, job);
}
}
}
上述代码表示在项目启动,Spring IOC容器初始化创建之后,Bean初始化之前和销毁之前,执行@PostConstruct注解的方法。一般用于一些项目初始化的设定。比如Spring IOC Container 初始化之后,用@PostConstruct注解Quartz的 CronTrigger 用于初始化定时器(向定时器中添加定时启动的JOB)。那么项目运行时就能自动的运行CronTrigger 中的job了。