我正在尝试创建一个String => Object的地图,如下所示:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
<util:map id="things">
<entry key="something">
<ref bean="somethingBean"/>
</entry>
</util:map>
<bean id="somethingBean" class="Something"></bean>
将其注入我的java代码后,我得到一张地图,但是密钥设置为&#34; somethingBean&#34;而不是&#34;某事&#34;。有任何想法吗?感谢。
答案 0 :(得分:1)
如果你像这样在构造函数中注入这样的地图,那么就会结束Spring的怪胎:
@Inject
public MyClass(Map<String, Something> things){}
如果您使用资源注释,则可以正常工作:
@Resource(name = "things")
private Map<String, Something> things;