json字符串怎么转换为java对象?

Python014

json字符串怎么转换为java对象?,第1张

可以使用jackson的 new ObjectMapper().readValue(String, bean.class)\x0d\x0a或者使用 JSONObject.toBean(String,bean.class)\x0d\x0a都可以实现json转化为bean\x0d\x0a而 jackson 或者 JSONObject 的jar包网上均有下载,把下载的jar导入你的项目中即可。

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

你既然提到了是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、首先,加入如下 jar 文件到工程中:

      

2、编写 java 代码,进行json 数据的转换

     

3、控制台输出结果如下所示:

{"age":90,"houses":[],"id":1,"name":"liNing"}

User [age=90, houses=[], id=1, name=liiNing]