Java 如何自定义ConvertUtilsBean.convert
我正在使用Java 如何自定义ConvertUtilsBean.convert,java,javabeans,Java,Javabeans,我正在使用BeanUtils.descripe从包含JAXElement的类中获取值。如何为该类注册自定义转换器 在注释中,可以对其进行自定义: The registered {@link Converter} for the * <code>java.lang.String</code> class will be used, which allows * applications to customize Object->String con
BeanUtils.descripe
从包含JAXElement的类中获取值。如何为该类注册自定义转换器
在注释中,可以对其进行自定义:
The registered {@link Converter} for the
* <code>java.lang.String</code> class will be used, which allows
* applications to customize Object->String conversions (the default
* implementation simply uses toString()).
public String convert(Object value) {
但在代码中,我只看到它只针对字符串转换器:
final Converter converter = lookup(String.class);
附言:
我试过:
ConvertUtils.register(new Converter() {
@Override
public <T> T convert(Class<T> type, Object value) {
// TODO
return null;
}
}, JAXBElement.class);
ConvertUtils.register(新转换器(){
@凌驾
公共T转换(类类型、对象值){
//待办事项
返回null;
}
},JAXBElement.class);
但是没有成功,因为正如我所说,它只寻找字符串转换器,这个函数返回字符串,所以它也在寻找将给定对象转换为字符串的转换器,否则它将如何返回它?
我想你误解了它的工作原理,就像javadoc建议的那样 将使用为
java.lang.String
类注册的转换器
您只需要注册字符串的转换器,就可以将自定义对象转换为字符串。正如description
方法一样,还需要将此数据作为字符串返回