如題, 工作中遇到一個類似"循環(huán)引用"的問題:<bean id="A" class="com.xxx.A" init-method="initA">
<property name="B" ref="B"></property>
</bean>
<bean id="B" class="com.xxx.B" init-method="initB">
</bean>上面的xml加載初始化 "A" bean的時候, 配置ref B 會依據(jù)無參構(gòu)造器創(chuàng)建“B”Bean, 并暴露一個exposedObj提前返回, 此時initB未執(zhí)行 , 繼續(xù)完成"A" bean 的創(chuàng)建, 執(zhí)行initA , 而initA需要initB提供的一些變量, 就會發(fā)生空指針異常.解決方法一: 先初始化B bean, 還有其他方法嗎?
2 回答

繁華開滿天機(jī)
TA貢獻(xiàn)1816條經(jīng)驗 獲得超4個贊
將initA的代碼轉(zhuǎn)移到afterPropertiesSet函數(shù)中去做,這個函數(shù)在InitializingBean接口中定義
- 2 回答
- 0 關(guān)注
- 828 瀏覽
添加回答
舉報
0/150
提交
取消