zoukankan      html  css  js  c++  java
  • Spring Boot 启动过程及 自定义 Listener等组件

    一、启动过程


    二、自定义组件


    package com.example.jdbc.listener;
    import org.springframework.context.ApplicationContextInitializer;
    import org.springframework.context.ConfigurableApplicationContext;
    
    public class HelloApplicationContextInitiallizer implements ApplicationContextInitializer {
        @Override
        public void initialize(ConfigurableApplicationContext configurableApplicationContext) {
            System.out.println("HelloApplicationContextInitiallizer.initialize");
        }
    }
    package com.example.jdbc.listener;
    
    import org.springframework.boot.SpringApplicationRunListener;
    import org.springframework.context.ConfigurableApplicationContext;
    import org.springframework.core.env.ConfigurableEnvironment;
    
    public class HelloSpringApplicationRunListener implements SpringApplicationRunListener {
    
        @Override
        public void environmentPrepared(ConfigurableEnvironment environment) {
            System.out.println("HelloSpringApplicationRunListener...environmentPrepared...");
        }
    
        @Override
        public void contextPrepared(ConfigurableApplicationContext context) {
            System.out.println("HelloSpringApplicationRunListener.contextPrepared");
        }
    
        @Override
        public void contextLoaded(ConfigurableApplicationContext context) {
            System.out.println("HelloSpringApplicationRunListener.contextLoaded");
        }
    
        @Override
        public void started(ConfigurableApplicationContext context) {
            System.out.println("HelloSpringApplicationRunListener.started");
        }
    
        @Override
        public void running(ConfigurableApplicationContext context) {
            System.out.println("HelloSpringApplicationRunListener.running");
        }
    
        @Override
        public void failed(ConfigurableApplicationContext context, Throwable exception) {
            System.out.println("HelloSpringApplicationRunListener.failed");
        }
    
        @Override
        public void starting() {
            System.out.println("HelloSpringApplicationRunListener.starting");
        }
    }

    /src/main/resources/META-INF/spring.factories

    org.springframework.context.ApplicationContextInitializer=
    com.example.jdbc.listener.HelloApplicationContextInitiallizer
    
    org.springframework.context.ApplicationListener=
    com.example.jdbc.listener.HelloSpringApplicationRunListener

    以上两个组件在项目启动过程中未能够成功执行,待解

    以下两个组件成功加载并在项目启东时执行


    package com.example.jdbc.listener;
    
    import org.springframework.boot.ApplicationArguments;
    import org.springframework.boot.ApplicationRunner;
    import org.springframework.stereotype.Component;
    
    @Component
    public class HelloApplicationRunner implements ApplicationRunner {
    
        @Override
        public void run(ApplicationArguments args) throws Exception {
            System.out.println("HelloApplicationRunner.run");
        }
    }
    package com.example.jdbc.listener;
    
    import org.springframework.boot.CommandLineRunner;
    import org.springframework.stereotype.Component;
    import java.util.Arrays;
    
    @Component
    public class HelloCommandLineRunner implements CommandLineRunner {
        @Override
        public void run(String... args) throws Exception {
            System.out.println("HelloCommandLineRunner.run" + Arrays.asList(args));
        }
    }
  • 相关阅读:
    Silverlight文本元素—高级修饰
    C#常用集合总结2
    Silverlight图片处理——(伸展,裁剪,蒙版)
    选择“Asp.Net Web应用程序”还是“Asp.Net网站”?
    HTML5能给软件初学者带来什么呢?
    性格的弱点
    (原)jvoiplib中的examples的编译和运行
    开源的好东西
    C++编绎器编绎C语言的问题
    gcc生成静态库和动态库(转自http://blog.csdn.net/ast_224/archive/2009/03/13/3988244.aspx)
  • 原文地址:https://www.cnblogs.com/guchunchao/p/10062597.html
Copyright © 2011-2022 走看看