Java自动注入默认_java – 自动注入与Spring
更新:2016年2月
自動(dòng)裝配將在Spring Framework 4.3中正式支持。實(shí)現(xiàn)可以在這個(gè)GitHub commit看到。
你不能自動(dòng)安裝的最終原因是Spring的DefaultListableBeanFactory.findAutowireCandidates(String,Class,DependencyDescriptor)方法的實(shí)現(xiàn)明確排除了可能性。這在此方法的以下代碼摘錄中可見:
for (String candidateName : candidateNames) {
if (!candidateName.equals(beanName) && isAutowireCandidate(candidateName, descriptor)) {
result.put(candidateName, getBean(candidateName));
}
}
FYI:bean的名稱(即,嘗試自動(dòng)安裝的bean)是beanName。那個(gè)bean實(shí)際上是一個(gè)自動(dòng)裝配候選,但上面的if條件返回false(因?yàn)閏andidateName事實(shí)上等于beanName)。因此,你根本不能使用自身(至少不是Spring 3.1 M1)自動(dòng)連接bean。
現(xiàn)在關(guān)于這是否是語義上的意圖行為,這是另一個(gè)問題。 😉
我會(huì)問Juergen,看看他說什么。
問候,
Sam(核心彈簧提交者)
p.s.我已經(jīng)打開了一個(gè)Spring JIRA問題,考慮通過類型使用@Autowired支持自動(dòng)裝配。請(qǐng)隨時(shí)觀看或投票支持此問題:https://jira.springsource.org/browse/SPR-8450
總結(jié)
以上是生活随笔為你收集整理的Java自动注入默认_java – 自动注入与Spring的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: drools规则引擎介绍
- 下一篇: Java多线程复习_Java多线程复习