开发过程中经常遇到单元测试的时候需要将一个Java类转换成JSON字符串的场景,如果引入了swagger还好,没有引入只能一个一个手动拼写,作为程序员一定要学会偷懒,所以就编写了一个方法来生成需要的字符串。
public static String getJSONStringFromJavaBean(Class<? extends Object> clazz) {
Field[] fields = clazz.getDeclaredFields();
StringBuffer stb = new StringBuffer("{");
for (int i = 0; i < fields.length; i++) {
try {
Field field = fields[i];
field.setAccessible(true);
String name = field.getName();
stb.append("\"").append(name).append("\"").append(":\"\"").append(",");
} catch (Exception e) {
e.printStackTrace();
}
}
int i = stb.lastIndexOf(",");
return stb.substring(0,i)+"}";
}