我正在尝试注入一个类的列表。我想要一个类的列表,而不是对象。
我的类看起来像这样:
public class CodeServiceImpl{
private List<Class<?>> codeList;
// getter and setter我的spring配置文件(我使用的不是注释,而是xml)是
<bean id="myCodeServiceImpl" class = "net.croz.service.CodeServiceImpl">
<property name="codeList">
<list>
<ref bean="myAddress"/>
<ref bean="myCity"/>
<ref bean="myCountry"/>
</list>
</property>
</bean>
<bean id="myAddress" class="java.lang.Class" factory-method="forName">
<constructor-arg value="net.croz.model.Address"/>
</bean>
<bean id="myCity" class="java.lang.Class" factory-method="forName">
<constructor-arg value="net.croz.model.City"/>
</bean>
<bean id="myCountry" class="java.lang.Class" factory-method="forName">
<constructor-arg value="net.croz.model.Country"/>
</bean>但是列表codeList没有被填充。它最终是一个空对象。谢谢你的帮助。
发布于 2014-05-12 17:15:54
实际上它是按原样工作的:
<bean class="com.my.proj.Foo">
<constructor-arg value="java.lang.String, org.springframework.util.StringUtils, byte[]"/>
</bean>其中,Foo是:
public class Foo {
private final List<Class<?>> codeList;
public Foo(Class<?>... codeList) {
this.codeList = Arrays.asList(codeList);
}
}ConversionService完成将逗号分隔的字符串转换为Class<?>[]的工作,并尝试使用BeanClassLoader独立解析每个类
https://stackoverflow.com/questions/23604168
复制相似问题