最近在学Java的反射这部分的知识,想到可以利用反射原理将javabean转换成json格式,于是动手写了下,完整的代码如下:
package com.kl.json;
import java.util.List;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
public class Bean2Json {
/**
* 将Bean转换成Json字符串
*
* @param bean
* @return
*/
public static String bean2Json(Object bean) {
StringBuilder stringBuilder = new StringBuilder("{");
Field[] fields = bean.getClass().getDeclaredFields();
for (int i = 0; i < fields.length; i++) {
// 添加属性名
stringBuilder.append("\"" + fields[i].getName() + "\":");
if (i == fields.length - 1) {
// 最后一个属性不要加逗号
stringBuilder.append("\""
+ getFieldValueByName(fields[i].getName(), bean)
.toString() + "\"");
} else {
stringBuilder.append("\""