@autowired注入靜態變量


 
        
@Autowired
private static UserRepository userRepository;
 
        

當我們直接對靜態變量進行注入的時候,會報:NullPointerException ;

 

解決方法:為變量添加get set方法

    private static UserRepository userRepository;
  //get方法
public static UserRepository getUserRepository(){ return userRepository; }
  //set方法 @Autowired
public void setUserRepository(UserRepository userRepository){ ThreadParameterUtil.userRepository=userRepository; }

注意:  這里的set方法不是靜態的,否則會出現和上邊一樣的問題,還是無法實例化對象;

       UserRepository 類上一定要添加@Component注解或者類似注解,可以讓Spring容器掃描到;

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM