我有一个基于Spring 2.x的大型应用程序,包含几百个applicationContext.xml文件和几千个bean / bean工厂.
大多数这些XML配置都说像default-autowire =“byName”,有效地打开了自动装配,但只有一小部分bean实际上是自动装配的.大多数bean属性都是显式设置的.
(这是出于历史原因,我想这就是你过去不够聪明的时候所说的.)
现在我们想要删除自动装配.我们相信只有一小部分豆子实际上是自动装配的 – 但我们不知道,究竟是什么,也不知道.我的问题是:
我们如何才能找到Spring的自动装配?
理想情况下,我们需要获取bean /属性列表,以便我们可以在XML配置中明确地注入这些内容.但是在使用调试器进入Spring内部之前,我决定询问SF上的某个人是否已经解决了类似的任务.
最佳答案
您可以尝试在Spring中启用DEBUG日志记录.它在初始化阶段打印了大量信息.我打赌也打印出自动接线消息.您只需找到该消息,然后在应用程序完全初始化后解析日志文件.
原文链接:https://www.f2er.com/spring/432700.html更新:我相信AbstractAutowireCapableBeanFactory负责自动布线逻辑.您可以检查autowireByName方法.它会生成以下日志消息,您可以在日志文件中搜索该消息:
logger.debug("Added autowiring by name from bean name '" + beanName +
"' via property '" + propertyName + "' to bean named '" + propertyName + "'");