Bean 名称中的“&”是什么意思?
What does the "&" mean in in a Bean Name?
我正在看一个 Spring Qualifier
注释如下:
@Autowired
@Qualifier("&fooStreamBuilder")
private FooFactoryBean fooFactoryBean;
我以前从未在这样的注释中看到过“&”。它是什么以及它有什么作用?
想通了。在最新的 spring 文档中:
To access a factory bean itself, the bean name should instead be
prefixed with a (&) symbol.
这意味着什么:
- 如果我省略“&”,我会得到一个由
工厂(
Foo
)。
- 如果我使用“&”,我得到的是实际的引用
工厂(
FooFactoryBean
)。
参考:https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#expressions
如果一个 bean 是一个工厂 bean(一个创建 bean FooFactory implements FactoryBean
的 bean),工厂实例 bean 名称是 &foo
而 bean 名称是 foo
.
我正在看一个 Spring Qualifier
注释如下:
@Autowired
@Qualifier("&fooStreamBuilder")
private FooFactoryBean fooFactoryBean;
我以前从未在这样的注释中看到过“&”。它是什么以及它有什么作用?
想通了。在最新的 spring 文档中:
To access a factory bean itself, the bean name should instead be prefixed with a (&) symbol.
这意味着什么:
- 如果我省略“&”,我会得到一个由
工厂(
Foo
)。 - 如果我使用“&”,我得到的是实际的引用
工厂(
FooFactoryBean
)。
参考:https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#expressions
如果一个 bean 是一个工厂 bean(一个创建 bean FooFactory implements FactoryBean
的 bean),工厂实例 bean 名称是 &foo
而 bean 名称是 foo
.