SpringApplicationRunListener

MySpringApplicationRunListener

META-INF/spring.factories

org.springframework.boot.SpringApplicationRunListener=\
org.zzc.jpa.springboot.ext.MySpringApplicationRunListener
public class MySpringApplicationRunListener implements SpringApplicationRunListener, Ordered {
	@Override
	public int getOrder() {
		return 0;
	}
	private final SpringApplication application;
	private final String[] args;
	private final SimpleApplicationEventMulticaster initialMulticaster;
	public MySpringApplicationRunListener(SpringApplication application, String[] args) {
		this.application = application;
		this.args = args;
		this.initialMulticaster = new SimpleApplicationEventMulticaster();
		for (ApplicationListener<?> listener : application.getListeners()) {
			this.initialMulticaster.addApplicationListener(listener);
		}
	}
	public void print(String content) {
		System.err.println("------SpringApplicationRunListener-print:" + content + "------");
	}
	@Override
	public void starting() {
		// run方法启动时,马上调用,用于非常早期的初始化工作
		print("starting");
	}
	@Override
	public void environmentPrepared(ConfigurableEnvironment environment) {
		print("environmentPrepared");
	}
	@Override
	public void contextPrepared(ConfigurableApplicationContext context) {
		print("environmentPrepared");
	}
	@Override
	public void contextLoaded(ConfigurableApplicationContext context) {
		print("contextLoaded");
	}
	@Override
	public void started(ConfigurableApplicationContext context) {
		print("started");
		applicationInitialize(context);
	}
	@Override
	public void running(ConfigurableApplicationContext context) {
		print("running");
	}
	@Override
	public void failed(ConfigurableApplicationContext context, Throwable exception) {
		print("failed");
	}
	
	private void applicationInitialize(final ConfigurableApplicationContext context) {
		StringBuilder sb =new StringBuilder();
		String port = context.getEnvironment().getProperty("server.port");
		String bar = "**************************************************************************************";
		String content = "* Application Starting Service at http://localhost";
		String contextPath = context.getEnvironment().getProperty("server.servlet.context-path");
		contextPath = StringUtils.trimToEmpty(contextPath);
		sb.append("\n");
		sb.append(bar).append("\n");
		sb.append("*").append("\n");
		if("80".equals(port)) {
			sb.append(content);
		}else {
			sb.append(content + ":" + port);
		}
		sb.append(contextPath).append("\n");
		sb.append("*").append("\n");
		sb.append(bar).append("\n");
		//log.info(sb.toString());
		System.err.println(sb.toString());
	}
}

启动打印信息

starting执行了两次

------SpringApplicationRunListener-print:starting------
------SpringApplicationRunListener-print:starting------
------SpringApplicationRunListener-print:environmentPrepared------

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::       (v2.1.16.RELEASE)

------SpringApplicationRunListener-print:environmentPrepared------
------SpringApplicationRunListener-print:contextLoaded------
------SpringApplicationRunListener-print:started------
**************************************************************************************
*
* Application Starting Service at http://localhost:38080
*
**************************************************************************************
------SpringApplicationRunListener-print:running------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_26264237

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值