前幾天呼叫第三方應用,其中的乙個是獲取人員詳細資訊的介面,欄位說多不多,說少也不少,我就想著懶得get再set了。仔細觀察了一下,發現返回的型別是map型別,而且value基本上都是string型別。即使該物件裡面還有實體,也是map型別,因此,就想到了用反射來賦值對應實體
public class test2 catch (exception e)
} /**
* 通過反射獲取對應值
*/public static void getinvokevalue(mapdata, object object) throws exception
// 獲取所有的fields
field fields = object.getclass().getdeclaredfields();
for (field field : fields)
// 通過反射set進去
propertydescriptor descriptor = new propertydescriptor(field.getname(),
object.getclass());
method setmethod = descriptor.getwritemethod();
setmethod.invoke(object, value);}}}
public class studentvo
public class gradevo
public class hobbyvo
關於反射的詳細資訊,會在過一段時間發布。 利用動態反射將map對應字段轉化為Bean物件字段
很多情況下,map對應的屬性字段需要轉化為model類的屬性字段,前幾天工作中需要將四五十個對應字段轉化為bean物件的字段,如果單純的考get set進行重複 的封裝,太枯燥又繁瑣,現使用動態反射的方式對所有字段進行批量轉化。但前提是兩者的欄位名得保持一致才行。獻上工具類 將map物件通過反射機制...
利用反射將實體類物件轉成Map
在我們程式設計的過程中往往會用到反射,利用反射有時候可以更容易的做到一些事情,下面就說乙個反射的實際應用場景吧,就是將object轉化成乙個map,object裡的屬性名對應map的key,object裡的屬性值對應map的value public static mapobjecttomap obj...
利用反射獲得物件的屬性值
命名空間 system.reflection 程式集 mscorlib 在 mscorlib.dll 中 c 利用反射,遍歷獲得乙個類的所有屬性名,以及該類的例項的所有屬性的值 總結 對應某個類的例項化的物件tc,遍歷獲取所有屬性 子成員 的方法 採用反射 type t tc.gettype 獲得該...