转载请注明出处: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(), ",") + "]";
}