解決 Value註解不能為靜態變數賦值

2021-08-30 22:08:44 字數 344 閱讀 5144

已經多次遇到這個問題,老是忘記了,記錄一下。

使用了spring的@value註解,但是沒有賦值成功,

@value("$")

private static string integraionurl;

但是最後沒有拿到值,查了下資料發現@value註解為靜態變數賦值是只需在set方法上使用@value即可,

**如下:

private static string integraionurl;

@value("$")

public void setintegrationurl(string param)

注意去掉set方法的static修飾!

Value註解為什麼不能直接為靜態變數賦值

value private static string endpoint 在使用endpoint這個成員變數時,取不到值,是空值。靜態變數 即類變數 是乙個類的屬性,而不是物件的屬性。spring依賴注入是基於物件層面上的。而且使用靜態變數擴大了靜態方法的使用範圍,靜態方法在spring是不推薦使用...

解決 value 註解有時為空

value 使用 value private string bucketname 可能為空的地方 1.類上沒加 component註解 component 把普通類例項化到spring容器裡 component public class ossclientutil private string bu...

首篇 spring使用 value注入靜態變數

大家平時使用spring的時候,可能會使用到配置類,進而有可能使用到靜態變數,需要從配置檔案中讀取值。下面是我自己的一點小小的總結,希望能夠幫助大家。對要使用的靜態變數生成set方法,然後去掉set方法中的static,在這個set方法上使用 value註解注入,例如 class test publ...