1. 程式人生 > >spring異常:org.springframework.beans.BeanInstantiationException解決

spring異常:org.springframework.beans.BeanInstantiationException解決

由於現在還在學習新知識階段,也在瘋狂找實習,所以對於很多問題現在還不會通過寫部落格來仔細的講,希望以後能找到工作,穩定之後會慢慢的把學習過的內容全部好好的梳理一下然後詳細的寫成部落格。在學習spring的依賴注入過程中出現了這樣一個異常,也就是初始化問題,查了後發現,這種問題有多種情況導致,還沒有看過spring原始碼,因此不能給出十分詳細的分析。有的人遇到的是java丟擲了NullPointer異常,那麼就檢查一下自己哪裡出現了空指標問題。但是對我來講,我遇到的是Java丟擲了一個NoSuchMethod異常,但是仔細查看了一下確認沒有少什麼顯然的方法。突然想到了spring的ioc實現是通過java的反射機制(看別人的部落格),剛好最近也在學習反射機制,想到了利用反射機制通過普通方法進行注入的時候會先進行class.newInstance()的方式獲得物件,這個只能是無參的,看了一下自己的,果然發現雖然自己採用的是setter方式實現注入,但是由於前一個練習,還保留了有參的構造方法,在有參構造方法的存在時java的就不會再預設存在無參構造方法,也就是無法通過無參方法獲得物件,於是就無法正常初始化bean,果然在把有參構造方法刪除掉或者新建無參構造方法就可以正常運行了。

但是因為沒有看過原始碼,也沒有看過別人的原始碼分析,因此不能確定,不過個人現階段這樣去理解是通順的。