springboot無法從靜態(tài)上下文中引用非靜態(tài)變量怎么辦

這篇文章主要介紹springboot無法從靜態(tài)上下文中引用非靜態(tài)變量怎么辦,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)專注于南州晴隆網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供南州晴隆營銷型網(wǎng)站建設,南州晴隆網(wǎng)站制作、南州晴隆網(wǎng)頁設計、南州晴隆網(wǎng)站官網(wǎng)定制、微信小程序開發(fā)服務,打造南州晴隆網(wǎng)絡公司原創(chuàng)品牌,更為您提供南州晴隆網(wǎng)站排名全網(wǎng)營銷落地服務。

靜態(tài)方法可以不用創(chuàng)建對象就調(diào)用,非靜態(tài)方法必須有了對象的實例才能調(diào)用。

因此想在靜態(tài)方法中直接引用非靜態(tài)方法是不可能的,因為不知道調(diào)用哪個對象的非靜態(tài)方法,編譯器不可能給出答案,因為沒有對象。

java就怕找不到對象。

解決辦法:

spring的set注入方法,通過非靜態(tài)的setter方法注入靜態(tài)變量,樣例如下

@PropertySource(value = {"classpath:config/application.yml"},ignoreResourceNotFound = true,encoding="UTF-8") 
@Service 
public class tank_task {  
  private static String kafka;  
  public static String getProfilesKafka() { 
    return kafka; 
  }  
  @Value("${stream.kafka.servers}") 
  public void setProfilesKafka(String kafka) { 
    tank_task.kafka = kafka; 
  }  
  public static void tank_test(){  
    System.out.println("config static kafka :" + tank_task.getProfilesKafka()); 
  } 
}

解決辦法不止這一種,個人覺得這種方法,簡單,也實用。

以上是“springboot無法從靜態(tài)上下文中引用非靜態(tài)變量怎么辦”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

分享文章:springboot無法從靜態(tài)上下文中引用非靜態(tài)變量怎么辦
文章網(wǎng)址:http://muchs.cn/article16/iejdgg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供服務器托管、營銷型網(wǎng)站建設外貿(mào)網(wǎng)站建設、外貿(mào)建站、軟件開發(fā)、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設