SpringBoot @PostConstruct原理用法解析

 更新时间:2020年08月06日 08:32:38   作者:lwb444  
这篇文章主要介绍了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了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Mybatis输入输出映射及动态SQL Review

    Mybatis输入输出映射及动态SQL Review

    这篇文章主要介绍了Mybatis输入输出映射及动态SQL Review,需要的朋友可以参考下
    2017-02-02
  • Java队列同步器之CountDownLatch实现详解

    Java队列同步器之CountDownLatch实现详解

    这篇文章主要介绍了Java队列同步器之CountDownLatch实现详解,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程执行完后再执行,例如,应用程序的主线程希望在负责启动框架服务的线程已经启动所有框架服务之后执行,需要的朋友可以参考下
    2023-12-12
  • Java 读取类路径下的资源文件实现代码

    Java 读取类路径下的资源文件实现代码

    这篇文章主要介绍了Java 读取类路径下的资源文件实现代码的相关资料,主要实现工具类代码ResourceLoadUtil.java的实例需要的朋友可以参考下
    2017-07-07
  • Retrofit+RxJava实现带进度条的文件下载

    Retrofit+RxJava实现带进度条的文件下载

    这篇文章主要为大家详细介绍了Retrofit+RxJava实现带进度条的文件下载,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 详解SimpleDateFormat的线程安全问题与解决方案

    详解SimpleDateFormat的线程安全问题与解决方案

    这篇文章主要介绍了SimpleDateFormat的线程安全问题与解决方案,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • Java算法实战之排一亿个随机数

    Java算法实战之排一亿个随机数

    我们在生活中经常遇见一些这样的需求,随机点名、公司年会抽奖、微信拼手气红包等,还有一些游戏比如打地鼠小游戏、俄罗斯方块等,这些场景中都会用到一种算法:随机,这篇文章主要给大家介绍了关于Java算法实战之排一亿个随机数的相关资料,需要的朋友可以参考下
    2021-11-11
  • 详解Spring Cloud中Hystrix 线程隔离导致ThreadLocal数据丢失

    详解Spring Cloud中Hystrix 线程隔离导致ThreadLocal数据丢失

    这篇文章主要介绍了详解Spring Cloud中Hystrix 线程隔离导致ThreadLocal数据丢失,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • java打印出菱形图案实例详解

    java打印出菱形图案实例详解

    在本篇文章里小编给大家分享的是关于java打印出菱形图案实例详解,需要的朋友们可以学习下。
    2020-02-02
  • Java的ConcurrentHashMap原理深入分析

    Java的ConcurrentHashMap原理深入分析

    这篇文章主要介绍了Java的ConcurrentHashMap原理深入分析,集合是编程中最常用的数据结构,而谈到并发,几乎总是离不开集合这类高级数据结构的支持,需要的朋友可以参考下
    2023-07-07
  • Java中死锁产生的原因有哪些?

    Java中死锁产生的原因有哪些?

    这篇文章主要介绍了Java中死锁产生的原因有哪些?死锁即Dead Lock指的是两个或两个以上的运算单元,下文关于其产生的原因,需要的小伙伴可以参考一下
    2022-05-05

最新评论