java使用反射機制將兩個物件共有的屬性進行復制value值
阿新 • • 發佈:2019-01-27
主要是把引數object中例如name和返回objct中那麼屬性值進行克隆並返回selectObject物件
/**更改查詢的po的分頁條數資訊*/ public static <T> T copyAttr(Object parameter,Object selectObj) { Field [] fields = parameter.getClass().getDeclaredFields(); if(null!=fields){ for(int i=0;i<fields.length;i++){ Field pojo = fields[i];String attrName = pojo.getName(); Object attrValue = null; Field rfield; try { pojo.setAccessible(true); attrValue = pojo.get(parameter); rfield = selectObj.getClass().getField(attrName); rfield.setAccessible(true); rfield.set(selectObj, attrValue); } catch (IllegalArgumentException e) { e.printStackTrace();} catch (IllegalAccessException e) { e.printStackTrace(); }catch (NoSuchFieldException e) { continue; } catch (SecurityException e) { e.printStackTrace(); } } } return (T) selectObj; }