Json可以说在java开发中是常见的工具了,我们会使用它进行数据转化,因为它简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言,那json数据如何使用?下面来我们就来给大家讲解一下json数据的简单使用及处理方法。
类库选择
Java中并没有内置JSON的解析,因此使用JSON需要借助第三方类库。
下面是几个常用的 JSON 解析类库:
Gson: 谷歌开发的 JSON 库,功能十分全面。
FastJson: 阿里巴巴开发的 JSON 库,性能十分优秀。
Jackson: 社区十分活跃且更新速度很快。
以下教程基于 FastJson 讲解。
环境配置
在 Maven 构建的项目中,在 pom.xml 文件中加入以下依赖即可。
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency>
编码
从 Java 变量到 JSON 格式的编码过程如下:
实例
public void testJson() { JSONObject object = new JSONObject(); //string object.put("string", "string"); //int object.put("int", 2); //boolean object.put("boolean", true); //array List < Integer > integers = Arrays.asList(1, 2, 3); object.put("list", integers); //null object.put("null", null); System.out.println(object); }
输出结果如下:
{"boolean":true,"string":"string","list":[1,2,3],"int":2}
解码
从 JSON 对象到 Java 变量的解码过程如下:
实例
public void testJson2() { JSONObject object = JSONObject .parseObject("{\"boolean\":true,\"string\":\"string\",\"list\":[1,2,3],\"int\":2}"); //string String s = object.getString("string"); System.out.println(s); //int int i = object.getIntValue("int"); System.out.println(i); //boolean boolean b = object.getBooleanValue("boolean"); System.out.println(b); //list List < Integer > integers = JSON.parseArray(object.getJSONArray("list") .toJSONString(), Integer.class); integers.forEach(System.out::println); //null System.out.println(object.getString("null")); }
string 2 true 1 2 3 null
JSON 对象与字符串的相互转化
1.JSON.parseObject()从字符串解析 JSON 对象
2.JSON.parseArray()从字符串解析 JSON 数组
3.JSON.toJSONString(obj/array)将 JSON 对象或 JSON 数组转化为字符串
实例
//从字符串解析JSON对象 JSONObject obj = JSON.parseObject("{\"runoob\":\"菜鸟教程\"}"); //从字符串解析JSON数组 JSONArray arr = JSON.parseArray("[\"菜鸟教程\",\"RUNOOB\"]\n"); //将JSON对象转化为字符串 String objStr = JSON.toJSONString(obj); //将JSON数组转化为字符串 String arrStr = JSON.toJSONString(arr);
Json易于人阅读和编写,同时也易于机器解析和生成,在java开发中经常遇到,所以我们需要熟练使用json的使用,发挥json的价值!最后大家如果想要了解更多json工具教程知识,敬请关注奇Q工具网。
推荐阅读: