fastJson将对象序列化成json字符串

 
            com.alibaba
            fastjson
            1.2.60
        

JSON_OBJ_STR = "{"studentName":"lily","studentAge":12}";
JSON_ARRAY_STR = "[{"studentName":"lily","studentAge":12},{"studentName":"lucy","studentAge":15}]";

COMPLEX_JSON_STR="{"teacherName":"crystall","teacherAge":27,"course":{"courseName":"english","code":1270},"students":[{"studentName":"lily","studentAge":12},{"studentName":"lucy","studentAge":15}]}";

字符串转json对象:JSONObject jsonObject = JSON.parseObject(JSON_OBJ_STR);

字符串转json数组:JSONArray jsonArray = JSON.parseArray(JSON_ARRAY_STR);

字符串转复杂json对象(嵌套):JSONObject jsonObject = JSON.parseObject(COMPLEX_JSON_STR);

获取嵌套里面的对象:JSONObject innerObject = jsonObject.getJSONObject("xxx");

json字符串转javaBean:Student student = JSON.parseObject(JSON_OBJ_STR, new TypeReference() {});

复杂对象同上一样转;

javaBean 转json字符串:String bookjson = JSONObject.toJSONString(book, SerializerFeature.WriteNullStringAsEmpty, SerializerFeature.WriteNullBooleanAsFalse);

上面的SerializerFeature有好多枚举类型,上面的是null值写成“”,还有空值不写进字符串的



SerializerFeature.NotWriteDefaultValue,比如studentName为空的时候,序列化成json字符串就是{"studentAge":"21"},没有sthdentName

你可能感兴趣的:(开发技巧)