Java 将POJO转换为使用GWT的映射
这个想法是要有一个POJO,比如:Java 将POJO转换为使用GWT的映射,java,gwt,Java,Gwt,这个想法是要有一个POJO,比如: class MyBean { long id; int count; public void setCount(int count){ this.count = count; } } 现在,我需要将计数自动存储为: put("count", count); 或者简单地说,put(“fieldname”,fieldvalue) 是否有一个库可以用于此目的,MyBean可以执行?我可以很容易地做一个复制构造函数之类的事情,但是,这里的重点
class MyBean {
long id;
int count;
public void setCount(int count){
this.count = count;
}
}
现在,我需要将计数自动存储为:
put("count", count);
或者简单地说,put(“fieldname”,fieldvalue)代码>
是否有一个库可以用于此目的,MyBean
可以执行?我可以很容易地做一个复制构造函数之类的事情,但是,这里的重点是自动化,而且我的应用程序中有很多模型都将此映射存储POJO值 您可以使用
公共类PropertyMapGenerator{
公共静态映射getPropertyMap(对象){
HashMap propertyMap=新HashMap();
//检索所有属性的描述符
PropertyDescriptor[]描述符=PropertyUtils.getPropertyDescriptors(对象);
for(PropertyDescriptor描述符:描述符){
//检查此属性是否有读卡器方法,即是否可以访问
if(descriptor.getReadMethod()!=null){
String name=descriptor.getName();
试一试{
propertyMap.put(名称,PropertyUtils.getProperty(对象,名称));
}捕获(例外e){
//妥善处理这件事
e、 printStackTrace();
}
}
}
返回属性映射;
}
}
现在,您只需将POJO传递到此生成器:
Map<String, Object> propertyMap = PropertyMapGenerator.getPropertyMap(myBean);
MapPropertyMap=PropertyMapGenerator.getPropertyMap(myBean);
Map<String, Object> propertyMap = PropertyMapGenerator.getPropertyMap(myBean);