SpringBoot @PostConstruct的用法

Posted lwb444

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot @PostConstruct的用法相关的知识,希望对你有一定的参考价值。

前言

本节我们将学习一下@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了。

以上是关于SpringBoot @PostConstruct的用法的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot启动后执行某个方法

springboot启动前执行方法的几种方式

对Spring PostConstruct注解的一点新认识

SpringBoot 在初始化之后执行某项操作的方法

springboot component注入servecie

SpringBoot启动过程原理