ねえ、クラスの値でBeanのプロパティを設定する最良の方法は何ですか? XML構成について。このような豆の場合:
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;
}
}
クラス名を挿入するだけで、SpringはそれをClass
オブジェクトに変換します。
<bean class="com.x.y.FilterJsonView">
<property name="clazz" value="com.x.y.SomeClass"/>
</bean>
クラス名を入力するだけです。 clazz
をString.class
にしたいとします。
<bean id="beanId" class="FilterJsonView">
<property name="clazz" value="Java.lang.String"/>
</bean>
Springには、変換を処理する PropertyEditorSupport
という実装があります ClassEditor
。