【发布时间】:2014-11-13 11:25:00
【问题描述】:
我正在尝试加载一个将属性文件作为参数传递给构造函数的类,但我得到了一个强制转换异常:java.lang.String cannot be cast to java.lang.Class。
有人可以帮忙吗?
这是我的代码:
myMap.properties
BAR=com.mycomp.myapp.Bar
application-context.xml 看起来像这样:
<util:properties id="myMap"
location="classpath:myMap.properties"
local-override="false"
value-type="java.lang.Class" />
<bean id="foo" class="com.mycomp.myapp.Foo">
<constructor-arg name="myMap" ref="myMap"/>
</bean>
Foo.java
public class Foo {
private Map<String, Class<Object>> myMap;
public Foo(Map<String, Class<Object>> myMap){
this.myMap = myMap;
Class<Object> barClass = myMap.get("BAR"); //failure point
}
}
【问题讨论】:
标签: java spring map properties code-injection