1700471165
}
1700471166
1700471167
}
1700471168
1700471169
覆写toString方法是为了方便打印,可以让展示的结果更清晰。我们再来看BeanUtils工具类,如代码清单24-17所示。
1700471170
1700471171
代码清单24-17 BeanUtils工具类
1700471172
1700471173
public class BeanUtils{
1700471174
1700471175
//把bean的所有属性及数值放入到Hashmap中
1700471176
1700471177
public static HashMap<String,Object>backupProp(Object bean){
1700471178
1700471179
HashMap<String,Object>result=new HashMap<String,Object>();
1700471180
1700471181
try{
1700471182
1700471183
//获得Bean描述
1700471184
1700471185
BeanInfo beanInfo=Introspector.getBeanInfo(bean.getClass());
1700471186
1700471187
//获得属性描述
1700471188
1700471189
PropertyDescriptor[]descriptors=beanInfo.getPropertyDescriptors();
1700471190
1700471191
//遍历所有属性
1700471192
1700471193
for(PropertyDescriptor des:descriptors){
1700471194
1700471195
//属性名称
1700471196
1700471197
String fieldName=des.getName();
1700471198
1700471199
//读取属性的方法
1700471200
1700471201
Method getter=des.getReadMethod();
1700471202
1700471203
//读取属性值
1700471204
1700471205
Object fieldValue=getter.invoke(bean,new Object[]{});
1700471206
1700471207
if(!fieldName.equalsIgnoreCase(“class”)){
1700471208
1700471209
result.put(fieldName,fieldValue);
1700471210
1700471211
}
1700471212
1700471213
}
1700471214
[
上一页 ]
[ :1.700471165e+09 ]
[
下一页 ]