代码之家  ›  专栏  ›  技术社区  ›  Mark

Bean名称中的“&”是什么意思?

  •  3
  • Mark  · 技术社区  · 8 年前

    我在看春天 Qualifier 注释如下:

    @Autowired
    @Qualifier("&fooStreamBuilder")
    private FooFactoryBean fooFactoryBean;
    

    我没有看到“&”在前面这样的注释中。它是什么?它有什么作用?

    2 回复  |  直到 8 年前
        1
  •  3
  •   Gary Russell    8 年前

    如果一个bean是工厂bean(创建bean的bean FooFactory implements FactoryBean ),工厂实例bean名称为 &foo 而bean名称是 foo

        2
  •  2
  •   Mark    8 年前

    找到了答案。在最新的spring文档中:

    要访问工厂bean本身,bean名称应改为 前缀为(&)象征

    这意味着什么:

    • 如果我省略了“&”,我得到了一个由 工厂(a Foo )。
    • 如果我使用“&”,我得到了实际 工厂(a FooFactoryBean )。

    参考号: https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#expressions

    推荐文章