1. 程式人生 > >Spring Boot使用Value註解給靜態變數賦值的方法

Spring Boot使用Value註解給靜態變數賦值的方法

昨天在使用@Value註解給靜態變數賦值的時候,發現靜態變數的值始終是null。後來搜尋一下得知其中原因,Spring Boot 不允許/不支援把值注入到靜態變數中。但是我們可以變通一下解決這個問題。因為Spring Boot 支援set方法注入,我們可以利用非靜態set方法注入靜態變數。程式碼:

 private static String directPurchaseurl;
    @Value("${application.directPurchase_url}")
    public void setDirectPurchaseurl(String url){
        directPurchaseurl = url;
    }

注意

  • 程式碼中需要@Component註解
  • set方法要是非靜態的