

SpringApplicationRunListeners有以下几个成员字段:
//org.apache.commons.logging.Log
private final Log log;
private final List<SpringApplicationRunListener> listeners;
private final ApplicationStartup applicationStartup;
SpringApplicationRunListeners可看作是SpringApplicationRunListener的组合模式实现,SpringApplicationRunListener。SpringApplicationRunListener是SpringApplication运行方法的监听器,SpringApplication每次运行都会创建一个新的SpringApplicationRunListener实例。

ApplicationStartup 来标记应用程序启动期间的步骤,并收集有关执行上下文或其处理时间的数据。
public interface ApplicationStartup {
/**
* 默认“无操作”ApplicationStartup 实现。
* 此变体旨在最小化开销,并且不记录数据。
*/
ApplicationStartup DEFAULT = new DefaultApplicationStartup();
/**
* 创建一个新步骤并标记它的开始。步骤名称描述当前操作或阶段。
* 这个技术名称应该是“.”命名空间,并且可以在应用程序启动期间重用于描述同一步骤的其他实例。
* @param name 步骤名称
*/
StartupStep start(String name);
}

默认“无操作”ApplicationStartup 实现。此变体旨在最小化开销,并且不记录事件。
class DefaultApplicationStartup implements ApplicationStartup {
private static final DefaultStartupStep DEFAULT_STARTUP_STEP = new DefaultStartupStep();
@Override
public DefaultStartupStep start(String name) {
return DEFAULT_STARTUP_STEP;
}
static class DefaultStartupStep implements StartupStep {
private final DefaultTags TAGS = new DefaultTags();
@Override
public String getName() {
return "default";
}
@Override
public long getId() {
return 0L;
}
@Override
public Long getParentId() {
return null;
}
@Override
public Tags getTags() {
return this.TAGS;
}
@Override
public StartupStep tag(String key, String value) {
return this;
}
@Override
public StartupStep tag(String key, Supplier<String> value) {

最低0.47元/天 解锁文章
8711

被折叠的 条评论
为什么被折叠?



