JAVA反射

来源:互联网 发布:淘宝退货率高会怎样 编辑:程序博客网 时间:2024/06/03 17:12

JAVA反射运用

public static <T> boolean copyPropertiesNotNull(T source,T target,String ...params){        Field[] fields = source.getClass().getDeclaredFields();//获取源所有字段        Method m;        Object value = null;        try        {            for(Field f : fields){                String name = f.getName();//获取字段名称                if(name.indexOf("List") > -1){                    continue;                }                m =source.getClass().getDeclaredMethod("get"+name);//获取方法                m.setAccessible(true);                value =  m.invoke(source);                if(value != null){//不为空                    m = target.getClass().getDeclaredMethod("set"+name, String.class);                    m.setAccessible(true);                    m.invoke(target, value);                }            }        }catch(Exception e){            e.printStackTrace();            return false;        }        return true;    }
0 0
原创粉丝点击