1

隨着布里克斯頓版本系列的發佈,我已經注意到了,出現了一個更新EurekaInstanceConfigBean接口,具體而言,默認的構造函數已經取得private,並且引入了一個新的構造函數,它接受了org.springframework.cloud.commons.util.InetUtils的一個實例。在線配置Spring的雲Netflix公司(Brixton.RELEASE)的EurekaInstanceConfigBean用於AWS

與天使釋放列車,許多例子(cloud.spring.io included)表明,該豆已配置類似如下內AWS工作時:

@Bean 
@Profile("!default") 
public EurekaInstanceConfigBean eurekaInstanceConfig() { 
    EurekaInstanceConfigBean b = new EurekaInstanceConfigBean(); 
    AmazonInfo info = AmazonInfo.Builder.newBuilder().autoBuild("eureka"); 
    b.setDataCenterInfo(info); 
    return b; 
} 

我明白,我也許可以得到這個通過創建工作一個InetUtils的實例並將其提供給構造函數,但我更加好奇最佳實踐用於創建此@Bean並將其配置爲使用AWS。

是意圖就是創建InetUtils實例,或利用自動配置,或特定@Enable*註解,甚至只設置字段的@PostConstruct方法?也許別的東西?

回答

2

InetUtils是一個bean,簡單地注入它。

public EurekaInstanceConfigBean eurekaInstanceConfig(InetUtils inetUtils) { 
    EurekaInstanceConfigBean b = new EurekaInstanceConfigBean(inetUtils); 
    //... 
    return b; 
} 

該Bean來自自動配置,具體地,org.springframework.cloud.commons.util.UtilAutoConfiguration類,它是彈簧雲公地罐的一部分。

+0

這很好。感謝您的信息。 –