spring-cloud-alibaba-nacos-configからnacos-clientへ
3456 ワード
scのbootstrap contextはmainアプリケーションcontextのparentであり、mainアプリケーションcontextで使用するbeanは
spring-cloud-alibaba-nacos-config/META-INF/spring.factoriesファイルで定義:
BootstrapConfigurationはscのbootstrap contextに対応する.
EnableAutoConfigurationはspring bootの自動構成注記です.
spring.factoriesファイルの解析はSpringFactoriesLoaderクラスにあります.
NacosConfigBootstrapConfiguration
Spring bootエンティティクラスマウントプロファイル情報
転載先:https://www.cnblogs.com/allenwas3/p/11354103.html
spring-cloud-alibaba-nacos-config/META-INF/spring.factoriesファイルで定義:
org.springframework.cloud.bootstrap.BootstrapConfiguration=\
org.springframework.cloud.alibaba.nacos.NacosConfigBootstrapConfiguration
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
org.springframework.cloud.alibaba.nacos.NacosConfigAutoConfiguration,\
org.springframework.cloud.alibaba.nacos.endpoint.NacosConfigEndpointAutoConfiguration
org.springframework.boot.diagnostics.FailureAnalyzer=\
org.springframework.cloud.alibaba.nacos.diagnostics.analyzer.NacosConnectionFailureAnalyzer
BootstrapConfigurationはscのbootstrap contextに対応する.
EnableAutoConfigurationはspring bootの自動構成注記です.
spring.factoriesファイルの解析はSpringFactoriesLoaderクラスにあります.
NacosConfigBootstrapConfiguration
@Configuration // bean
@ConditionalOnProperty(name = "spring.cloud.nacos.config.enabled", matchIfMissing = true)
public class NacosConfigBootstrapConfiguration {
@Bean // bean
@ConditionalOnMissingBean
public NacosConfigProperties nacosConfigProperties() {
return new NacosConfigProperties();
}
@Bean
public NacosPropertySourceLocator nacosPropertySourceLocator(
NacosConfigProperties nacosConfigProperties) {
return new NacosPropertySourceLocator(nacosConfigProperties);
}
}
Spring bootエンティティクラスマウントプロファイル情報
@ConfigurationProperties(NacosConfigProperties.PREFIX)
public class NacosConfigProperties {
public static final String PREFIX = "spring.cloud.nacos.config";
private static final Logger log = LoggerFactory
.getLogger(NacosConfigProperties.class);
/**
* nacos config server address
*/
private String serverAddr;
}
転載先:https://www.cnblogs.com/allenwas3/p/11354103.html