百度

java反射类内容获取

 1  private void DtoReflect(Object obj, MqDto mqDto) throws Exception {
 2   Map map = getMap(mqDto);
 3   if(obj==null)
 4     return;
 5   //获取Class对象
 6   Class clazz =obj.getClass();
 7   //获取Calss中的所有方法
 8   Method[] methods = clazz.getDeclaredMethods();
 9      //遍历Class中的方法
10    for(int j=0;j<methods.length;j++)
11    {
12     //获取方法对象
13     Method method=methods[j];
14     //获取方法名字
15                 String methodName=method.getName();
16                 //方法名进行小写
17                 String methodNameLower=methodName.toLowerCase();
18                 //寻找xml给过来的字段名找在Class中的方法
19     if (map.containsKey(methodNameLower)) {
20      //数据set到Class的set方法中
21      Method finishTask =clazz.getMethod(methodName,new Class[]{String.class});
22      finishTask.invoke(obj, new Object[]{MqUtil.getFieldValue(mqDto.getBody(),(String)map.get(methodNameLower))});
23     }
24    
25    }
26   
27  }

 

posted @ 2016-07-19 11:11  雪季28  阅读(319)  评论(0编辑  收藏  举报
百度