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 }
  • 相关阅读:
    【漏洞挖掘】攻击对外开放的Docker API接口
    使用密钥认证机制远程登录Linux
    极客时间-左耳听风-程序员攻略开篇-零基础启蒙
    WEBSHELL恶意代码批量提取清除工具
    string替换字符串,路径的斜杠替换为下划线
    Linux下文件的三个时间意义及用法
    记录一次lnmp故障报告
    Centos 7.2编译安装MariaDB-10.0.xx
    win 7 浏览器被篡改小插曲
    【 sysbench 性能基准测试 】
  • 原文地址:https://www.cnblogs.com/fanqisoft/p/10349074.html
Copyright © 2011-2022 走看看