Spring是不是真的支持接口注入?

man*_*nta 6 java spring inversion-of-control

我知道Spring不支持接口注入,我已多次阅读过.

但是今天我在Martin Fowler(链接)中看到一篇关于IOC的文章时,似乎在Spring中使用ApplicationContextAware是类似于Interface注入的.

当我们的Spring bean需要Spring'上下文引用时,我们将实现ApplicationContextAware并实现setApplicationContext(ApplicationContext context)方法,并且我们将bean包含在配置文件中.这不是接口注入,在那里告诉Spring注入(或),比如说,将上下文的引用传递给这个bean吗?

或者我在这里遗漏了什么?感谢您的任何信息!

ManiKanta

mer*_*ike 6

如果你的意思是接口注入在维基百科上的定义,Spring支持它出去ResourceLoaders,的ApplicationContexts,MessageSource的,和其他的盒子,与接口ResourceLoaderAware,了ApplicationContextAware,MessageSourceAware分别.

通过注册BeanPostProcessor,还可以使用新接口扩展此机制.

Spring参考手册非常清楚地解释了这种能力(以及何时应该(不)使用它).顺便说一句,我一般认为弹簧参考手册比"互联网上的人"说的要可靠得多.