**
使用注解:@DependsOn(需配合@Component注解)
**
代码示例:
需要先加载的bean:
@ConfigurationProperties(prefix = "es")
@Component("ElasticSearchConfigProperties")
public class ElasticSearchConfigProperties {
public static String ip;
public static String port;
public void setIp(String ip) {
ElasticSearchConfigProperties.ip = ip;
}
public void setPort(String port) {
ElasticSearchConfigProperties.port = port;
}
}
后加载的bean
@Configuration()
@DependsOn("ElasticSearchConfigProperties")
public class RestClientConfig extends AbstractElasticsearchConfiguration {
@Bean(name = "elasticsearchClient")
@Override
public RestHighLevelClient elasticsearchClient() {
final ClientConfiguration clientConfiguration = ClientConfiguration.builder()
.connectedTo(ElasticSearchConfigProperties.ip+":"+ElasticSearchConfigProperties.port)
//.withBasicAuth("userName", "password")
.build();
RestHighLevelClient rest = RestClients.create(clientConfiguration).rest();
System.out.println("elasticsearchClient create success");
return rest;
}
}