簡體   English   中英

@Value占位符未解析某些spring bean中的值

[英]@Value place holder not resolving values in certain spring beans

我有一個情況,我想弄清楚為什么會這樣。 場景是我有一個A類,該類實現了Web服務公開的操作。 對於每個操作請求,都會創建一個新的A實例。 整個事情是由Spring內部管理的,我不確定Web服務實例化A類的精確程度。

現在我有一個類變量,我想在運行時通過其值注入

@Value(“ $ {someValue}”)字符串someVariable

someValue定義了一個系統屬性。 但是創建的每個bean都有someVariable作為NULL。

我在另一個在同一包中用@Configuration注釋的類中嘗試過同樣的事情,它可以很好地解決變量。

因此,我想想是否可以通過@Value進行注入取決於是否創建了像@ Component,@ Configuration- @ Bean,XML definiti這樣的bean。

並不是的。 實際上,您可以在組件掃描bean和xml定義bean中使用@Value注入值。 但是請注意這一點,它取決於放置Placeholder xml文件,它僅在每個容器中有效。 例如,將其放在applicationContext中,則在xxx-servlet.xml中創建的bean無法使用@Value注入值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM