java操作JSON对象

对于java来说,json的对象也是分为JSONObject和JSONArray这两种。每种对象的操作方式不一样哦。

类库选择

Java中并没有内置JSON的解析,因此使用JSON需要借助第三方类库。

下面是几个常用的 JSON 解析类库:

Gson: 谷歌开发的 JSON 库,功能十分全面。

FastJson: 阿里巴巴开发的 JSON 库,性能十分优秀。

Jackson: 社区十分活跃且更新速度很快。

一,生成json的对象(这里的创建对于JSONArray同样适用)

1,直接创建

JSONObject jsonObject = new JSONObject();

           jsonObject.put("name", "tom");

           jsonObject.put("age", 18);

2,map创建

Map params=new HashMap<>();

params.put("status","200");

params.put("username","kylin");

params.put("password","123456");

params.put("sexy","male");

params.put("userID","15062");

JSONObject jsonObject=JSONObject.fromObject(params);

3,对象创建

User user=new User();

user.setUsername("kylin");

user.setPassword("123456");

JSONObject jsonObject=JSONObject.fromObject(user);

4,json的字符串创建

JSONObject object = JSONObject .parseObject("{\"boolean\":true,\"string\":\"string\",\"list\":[1,2,3],\"int\":2}");

二,json对象转成其他的对象

1,转换成java对象

User user=(User)JSONObject.toBean(jsonobject,User.class);

(需要注意:JSONArray还可以转换成很多种的形式。)

List fileList = (List) JSONArray.toCollection(jsonArray,FileTableForm.class);

2,转成map

JSONObject jsonobject = JSONObject.fromObject(jsonStr);

Map params=(Map) jsonObject;

//然后就可以通过map来操作了

//判断是否有username字段和username字段if (params.containsKey("username")){

System.out.println(params.get("username"));

}

if (params.containsKey("password")){

System.out.println(params.get("password"));

}

你可能感兴趣的:(JSON)