利用泛型和反射對Java對象集合轉換成Json的工具類

轉載請註明出處:http://blog.csdn.net/ylp_boy/article/details/44652107


//T是實際調用時傳入的實體的類型

public static <T> String entityListToJson(List<T> list)throws NoSuchMethodException, SecurityException,IllegalAccessException, IllegalArgumentException,InvocationTargetException{
if (list == null || list.size() == 0){
return "{}";
}

StringBuffer sb = new StringBuffer();
sb.append("[");


for (T t : list){
sb.append("{");

//獲取到T的所有屬性
for (Field field : t.getClass().getDeclaredFields()){
if (!"serialVersionUID".endsWith(field.getName())){  
String fieldName="get" + field.getName().substring(0,1).toUpperCase()+ field.getName().substring(1);
sb.append("\""+ field.getName()+ "\":\""
+ t.getClass().getMethod(fieldName, null)
.invoke(t) + "\",");
}
}
sb.deleteCharAt(sb.length() - 1).append("},");
}


return StringUtils.removeEnd(sb.toString(), ",") + "]";
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章