我知道這應該是一塊蛋糕,但我只是沒有得到任何地方。如何在Spring Boot中使用YAML屬性和構造函數注入?
在我的春天啓動的應用程序,在application.yml文件,我有一個入口,像這樣:
some:
constructor:
property: value
而且我有一個春天的服務(這是假的,但演示了此問題):
package somepackage;
@Service
public class DummyService {
public DummyService(@Value("${some.constructor.property}") String path) {}
}
啓動失敗,雖然:
org.springframework.beans.factory.BeanCreationException:錯誤 在文件[...(類 文件中)中定義的名稱'dummyService'中創建Bean ...]:bean的實例化失敗;嵌套的異常是 org.springframework.beans.BeanInstantiationException:未能到 實例化[somepackage.DummyService]:找不到默認構造函數; 嵌套的例外是java.lang.NoSuchMethodException: somepackage.DummyService()
我如何說服春天,它應該使用非空構造函數,它應該從YAML文件中構造函數的參數?注意:我沒有使用任何XML bean配置文件或任何東西,並且不願意。
啊,我在錯誤的地方已經@Autowired。非常感謝。 – user1953555