1. 程式人生 > >使用Spring註解,在靜態方法中注入bean(spring靜態注入元件——工具類常用)

使用Spring註解,在靜態方法中注入bean(spring靜態注入元件——工具類常用)

如果直接用spring注入靜態屬性,則會報錯,提示@Resource annotation is not supported on static fields,如果又一定要通過spring注入bean,可以採用@PostConstruct註解在某個用來初始化的方法上,注入時注入到另一個不是靜態的變數裡,然後在初始化方法裡面將注入好的變數賦值給靜態變數,通過這些操作就給靜態變數賦值。

  1. @Component
  2. publicclass CodeGenerator { 
  3. @Resource
  4.     private StringRedisTemplate stringRedisTemplate 
  5.     publicstatic
     CodeGenerator codeGenerator;  //通過該標籤以及該方法實現給static屬性注入
  6.     @PostConstruct
  7.    publicvoid init(){  
  8.         codeGenerator.redisService = this.stringRedisTemplate;  
  9.     }  
  10. }