我有它使用SpringBoot和填充從queues.properties文件以下列方式一個POJO項目(這將被用來作爲一個依賴):如何獲得Spring Boot註釋並在普通的Spring應用程序中執行?
@Component
@PropertySource({"classpath:queues.properties"})
@ConfigurationProperties("queue")
public class QueuesConfig {
private String messagingBrokerXml;
private String messagingBrokerJolokia;
private String messagingBrokerApi;
private List<QueuesConfig.QueueModel> queues = new ArrayList();
public QueuesConfig() {
}
public String getMessagingBrokerXml() {
return this.messagingBrokerXml;
}
...
通過在父拖着這種依賴性SpringBoot項目在其類路徑上有一個「queues.properties」文件,QueuesConfig對象被填充正確的值。
我目前正試圖通過在Plain Spring項目中使用此依賴項來實現相同的行爲。我可以確認PropertySource註釋獲得「執行」並且queues.properties文件是StandardServletEnvironment(屬於PropertySourceList中的條目)的一部分。
問題在於「ConfigurationPropertiesBindingPostProcessor」bean沒有被註冊(不是singletonObjects的一部分),因此應該填充POJO的代碼沒有被執行。
有沒有解決方法?
非常感謝!
所以你基本上是說*我想使用Spring Boot的這個功能而不使用Spring Boot * ...您如何期待這將起作用?您需要在您的類路徑中使用Spring Boot jar,並手動執行Spring Boot爲您做的事情。然後,你獲得了什麼,但複雜性和類路徑上的附加jar。 –