开发过程中经常遇到单元测试的时候需要将一个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)+"}";
}