嘿,使用Class值设置bean属性的最佳方法是什么?关于XML配置。对于像这样的bean:
public class FilterJsonView extends MappingJacksonJsonView {
private Set<String> filteredAttributes;
private Class clazz;
public Set<String> getFilteredAttributes() {
return filteredAttributes;
}
public void setFilteredAttributes(Set<String> filteredAttributes) {
this.filteredAttributes = filteredAttributes;
}
public Class getClazz() {
return clazz;
}
public void setClazz(Class clazz) {
this.clazz = clazz;
}
}
答案 0 :(得分:30)
只需注入类名,Spring会将它转换为Class
对象,例如。
<bean class="com.x.y.FilterJsonView">
<property name="clazz" value="com.x.y.SomeClass"/>
</bean>
答案 1 :(得分:9)
只需提供课程名称。假设您希望clazz
为String.class
:
<bean id="beanId" class="FilterJsonView">
<property name="clazz" value="java.lang.String"/>
</bean>
Spring有一个名为PropertyEditorSupport
的ClassEditor
实现来处理转换。