摘要:所以如下這種寫法就是錯誤的,這樣是無法注入的,在使用該變量的時候會導致空指針錯誤依賴注入是依賴方法,靜態變量不屬于對象,只屬于類。
Spring無法直接給靜態變量注入值,因為靜態變量不屬于對象,只屬于類,也就是說在類被加載字節碼的時候變量已經初始化了,也就是給該變量分配內存了,導致spring忽略靜態變量。所以如下這種寫法就是錯誤的,這樣是無法注入的,在使用該變量的時候會導致空指針錯誤:
@Autowired private static IOptionService optionService;
Spring依賴注入是依賴set方法,靜態變量不屬于對象,只屬于類。解決方法就是加上非靜態的set方法,如下:
private static IOptionService optionService; @Autowired public void setOptionService(IOptionService optionService) { Commons.optionService = optionService; }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/73143.html
摘要:案例對靜態變量的注入為空案例代碼如下錯誤案例這種方式是不能給靜態變量注入屬性值的解決方案一注解加在方法上面解決方案二注解因為注解修飾的方法加在順序在構造方法之后靜態變量賦值之前,所 ...
摘要:入門和學習筆記概述框架的核心有兩個容器作為超級大工廠,負責管理創建所有的對象,這些對象被稱為。中的一些術語切面切面組織多個,放在切面中定義。 Spring入門IOC和AOP學習筆記 概述 Spring框架的核心有兩個: Spring容器作為超級大工廠,負責管理、創建所有的Java對象,這些Java對象被稱為Bean。 Spring容器管理容器中Bean之間的依賴關系,使用一種叫做依賴...
摘要:的依賴關系,根據依賴關系配置完成之間的裝配。的行為信息,如生命周期范圍及生命周期各過程的回調函數。使用該種裝配模式時,優先匹配參數最多的構造函數。如果提供了默認的構造函數,則采用否則采用進行自動裝配。 點擊進入我的博客 1 Spring容器與Bean配置信息 Bean配置信息 Bean配置信息是Bean的元數據信息,它由一下4個方面組成: Bean的實現類 Bean的屬性信息,如數...
摘要:如感興趣,可移步手寫之基于動態創建對象手寫之基于注解動態創建對象今天將詳細介紹如何手寫依賴注入,在運行過程中如何動態地為對象的屬性賦值。完成后在中會有相關的包出現進行注入前需要創建工廠,在運行時從工廠中取出對象為屬性賦值。 前兩篇文章介紹了關于手寫Spring IOC控制反轉,由Spring工廠在運行過程中動態地創建對象的兩種方式。如感興趣,可移步: 手寫Spring之IOC基于xml...
閱讀 1125·2021-11-24 10:21
閱讀 2561·2021-11-19 11:35
閱讀 1662·2019-08-30 15:55
閱讀 1293·2019-08-30 15:54
閱讀 1192·2019-08-30 15:53
閱讀 3498·2019-08-29 17:21
閱讀 3308·2019-08-29 16:12
閱讀 3412·2019-08-29 15:23