zoukankan      html  css  js  c++  java
  • SpringBoot几个重要的事件回调、监听机制

    (1)、需要配置在META-INF/Spring.factories

      1.ApplicationContextInitializer

     1 //
     2 // Source code recreated from a .class file by IntelliJ IDEA
     3 // (powered by Fernflower decompiler)
     4 //
     5 
     6 package org.springframework.context;
     7 
     8 public interface ApplicationContextInitializer<C extends ConfigurableApplicationContext> {
     9     //监听ioc容器启动
    10     void initialize(C var1);
    11 }

      2.SpringApplicationRunListener 

     1 //
     2 // Source code recreated from a .class file by IntelliJ IDEA
     3 // (powered by Fernflower decompiler)
     4 //
     5 
     6 package org.springframework.boot;
     7 
     8 import org.springframework.context.ConfigurableApplicationContext;
     9 import org.springframework.core.env.ConfigurableEnvironment;
    10 
    11 public interface SpringApplicationRunListener {
    12     //监听容器开始
    13     void starting();
    14     //SpringBoot环境准备好
    15     void environmentPrepared(ConfigurableEnvironment environment);
    16     //ioc容器准备好了
    17     void contextPrepared(ConfigurableApplicationContext context);
    18     //容器环境加载完成
    19     void contextLoaded(ConfigurableApplicationContext context);
    20 
    21     void started(ConfigurableApplicationContext context);
    22 
    23     void running(ConfigurableApplicationContext context);
    24     //SpringBoot创建完成
    25     void failed(ConfigurableApplicationContext context, Throwable exception);
    26 }

    (2)、只需要放到ioc容器中即可

      1.ApplicationRunner 

     1 //
     2 // Source code recreated from a .class file by IntelliJ IDEA
     3 // (powered by Fernflower decompiler)
     4 //
     5 
     6 package org.springframework.boot;
     7 
     8 @FunctionalInterface
     9 public interface ApplicationRunner {
    10     void run(ApplicationArguments args) throws Exception;
    11 }

      2.CommandLineRunner 

     1 //
     2 // Source code recreated from a .class file by IntelliJ IDEA
     3 // (powered by Fernflower decompiler)
     4 //
     5 
     6 package org.springframework.boot;
     7 
     8 @FunctionalInterface
     9 public interface CommandLineRunner {
    10     void run(String... args) throws Exception;
    11 }
  • 相关阅读:
    数据脱敏工具类
    oracle根据身份证号码 计算年龄、性别
    mysql 中通过身份证号码计算年龄
    解决POI读取Excel如何判断行是不是为空
    oralce 将浮点型字段,转为指定精度 并且四舍五入
    mysql too many connections
    spring boot @Transactional的一个小坑
    webpack4下url-loader打包图片问题
    使用extract-text-webpack-plugin插件后报错
    MySQL服务意外停止
  • 原文地址:https://www.cnblogs.com/fanqisoft/p/10349074.html
Copyright © 2011-2022 走看看