在Spring XML配置中,我想使用depends-on
attribute来声明bean的初始化依赖于另一个bean。皱纹是我需要处理包含空格的bean ID,如下所示:
<bean id="Bean A">
<!-- stuff -->
</bean>
<bean id="Bean B" depends-on="Bean A">
<!-- stuff -->
</bean>
Unfortunatley,这不起作用,因为depends-on
属性可以接受以空格分隔的bean ID列表; Spring认为它正在寻找 Bean B 依赖的两个bean, Bean 和 A 。
有没有办法声明这个,以便正确解析为 Bean A ?
注意:评论或答案只是说&#34;不要在bean ID中使用空格&#34;不是很有用;这个问题与成语/惯例的优点无关。
答案 0 :(得分:0)
我认为你不能。
要表达对多个bean的依赖关系,请提供bean名称列表作为depends-on属性的值,使用逗号,空格和分号作为有效分隔符
除非在depends-on
属性中有一些巴洛克式和未记录的转义语法,否则它几乎排除了带有空格的bean ID。
我可以给出关于在bean ID中使用空格以及它们与bean名称的关系的建议,但似乎你不想听到,
答案 1 :(得分:0)
根据文档depends-on依赖于将空格视为分隔符之一。这限制了具有空格的名称或ID的bean,一种方法是为其中包含空格的bean创建别名,并在依赖部分中引用它们。
<alias name="bean with space" alias="alias"/>