打字猴:1.700471234e+09
1700471234
1700471235 //获得属性描述
1700471236
1700471237 PropertyDescriptor[]descriptors=beanInfo.getPropertyDescriptors();
1700471238
1700471239 //遍历所有属性
1700471240
1700471241 for(PropertyDescriptor des:descriptors){
1700471242
1700471243 //属性名称
1700471244
1700471245 String fieldName=des.getName();
1700471246
1700471247 //如果有这个属性
1700471248
1700471249 if(propMap.containsKey(fieldName)){
1700471250
1700471251 //写属性的方法
1700471252
1700471253 Method setter=des.getWriteMethod();
1700471254
1700471255 setter.invoke(bean,new Object[]{propMap.get(fieldName)});
1700471256
1700471257 }
1700471258
1700471259 }
1700471260
1700471261 }catch(Exception e){
1700471262
1700471263 //异常处理
1700471264
1700471265 System.out.println(“shit”);
1700471266
1700471267 e.printStackTrace();
1700471268
1700471269 }
1700471270
1700471271 }
1700471272
1700471273 }
1700471274
1700471275 该类大家在项目中会经常用到,可以作为参考使用。类似的功能有很多工具已经提供,比如Spring、Apache工具集commons等,大家也可以直接使用。我们再来看备忘录角色,如代码清单24-18所示。
1700471276
1700471277 代码清单24-18 备忘录角色
1700471278
1700471279 public class Memento{
1700471280
1700471281 //接受HashMap作为状态
1700471282
1700471283 private HashMap<String,Object>stateMap;
[ 上一页 ]  [ :1.700471234e+09 ]  [ 下一页 ]