【问题标题】:Bean with same name in Root and Child Application Context?在根和子应用程序上下文中具有相同名称的 Bean?
【发布时间】:2016-08-02 18:57:32
【问题描述】:

如果我在根应用程序上下文和子应用程序上下文中创建具有相同名称的 bean
如在根应用程序上下文和调度程序 servlet 上下文中
子应用程序上下文会覆盖 bean 定义吗?
请解释一下会有什么行为?
如果我包含其他配置类并且都包含同名的bean,还要解释Java Config 中的行为。
会创建两个 bean 吗?或者一个会覆盖另一个。

【问题讨论】:

  • 男孩,这似乎是一个很好的实验候选者!为什么不尝试一下并告诉我们结果呢?

标签: java spring spring-mvc


【解决方案1】:

根据我的实验

在父应用上下文和子应用上下文中,为每个应用上下文创建新的 Bean无论 Bean 名称是否相同

任何来自 ( autowired by ) 父应用上下文的调用都是指父应用上下文中的 Bean
任何来自 ( autowired by ) 子应用上下文的调用都是指子应用上下文中的 Bean

And In Java Config 导入包含同名 bean 的其他配置不会创建新的 Bean,并且 Bean 定义被覆盖。 此效果与从 XML 导入同名 bean 的效果相同。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    • 2012-10-20
    • 2015-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多