json格式的字符串转换为java对象

其中的反斜杠干嘛用的?

    先来解释反斜杠干嘛用的:

    你既然提到了是json字符串,对,请注意字符串三个字。什么是字符串?两个引号之间的就是一个字符串比如:"abcdefg"这就是字符串.

    假如我有个json对象:

    {

           "message" :   "success"

    }

    那么问题来了,怎么把它放到一个String字符串对象里呢?

    那么我们都会这么做:

String json = "{"message":"success"}";

对吧?但是这么做对吗?前面说过了,字符串是引号开始,引号结尾的,再看一眼这么做对吗?

所以我们需要转义字符去将引号放入字符串当中,而不是字符串定义的功能。“  \" ”就是表示将双引号放入字符串中。


2. json字符串转java对象

下面以ali的fastjson为例,讲解json字符串转json对象:

String jsonStr = "{\"message\" : \"success\"}";
JSONObject jsonObject = JSON.parseObject(jsonStr);
String message = jsonObject.getString("message");
System.out.println(message);

假如你有想要转换成的bean :

public class Info {
    private String message;

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

就可以这样:

String jsonStr = "{\"message\" : \"success\"}";
Info info = JSON.parseObject(jsonStr, Info.class);
System.out.println(info.getMessage());

 这里的fastjson只是处理json的框架中的一个,此外还有jackson、Gson等等,可以根据自己的需求选择一个就可以了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-14
反斜杠\起到转义的作用,防止解析错误,比如双引号。
json格式的字符串转换为java对象推荐Gson.
Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。
参考:https://github.com/google/gson