添加logback-spring.xml,将log输出到文件,控制台输出的level改为error因此只会出处banner
src/main/resources/banner.txt的内容为
start...
但是输出完banner后,spring boot并没有启动完毕
因此,我想在Spring boot启动成功后输出提示
有两种方式
1.实现 ApplicationRunnerImpl
eg:
package com.example.demo.configure; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.stereotype.Component; @Component public class ApplicationRunnerImpl implements ApplicationRunner { @Override public void run(ApplicationArguments args) throws Exception { System.out.println("application start..."); } }
2.实现 CommandLineRunnerImpl
eg:
package com.example.demo.configure; import org.springframework.boot.CommandLineRunner; import org.springframework.stereotype.Component; @Component public class CommandLineRunnerImpl implements CommandLineRunner { @Override public void run(String... args) throws Exception { System.out.println("application start..."); } }
输出:
start...
application running...
注:
执行时机为容器启动完成的时候
run方法中接收的参数类型不一样
如果有多个实现类,并且需要按一定顺序执行,可以在实现类上加上@Order注解。@Order(value=整数值)。SpringBoot会按照@Order中的value值从小到大依次执行