赞
踩
**
1.JSON数据格式概念
JSON数据现在是我们开发中用的最多的,百分之九十的数据都是通过JSON方式进行传输,那么JSON是什么呢?
JSON其实是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。基本上所有的编程语言都支持JSON数据格式。说白点,JSON就是一种数据传输格式,而不是一门语言,用来存储数据,进行数据间传输的,打个比方,在前后台的传输过程中,Json字符串是相当常用的,现在前台的数据大多都是用JSON数据格式进行数据传输,想要传输到后端就要进行转换JSON数据转换为后台对象。这就涉及到JSON数据格式和对象实体之间的转换。下面我们将讲解常用的JSON数据转换方式。
2.JSON常用类型
任何支持的类型都可以通过 JSON 来表示,例如字符串、数字、对象、数组等。但是对象和数组是比较特殊且常用的两种类型。
对象:对象在 JS 中是使用花括号包裹 {} 起来的内容,数据结构为 {key1:value1, key2:value2, …} 的键值对结构。在面向对象的语言中,key 为对象的属性,value 为对应的值。键名可以使用整数和字符串来表示。值的类型可以是任意类型。
数组:数组在 JS 中是方括号 [] 包裹起来的内容,数据结构为 [“java”, “javascript”, “vb”, …] 的索引结构。在 JS 中,数组是一种比较特殊的数据类型,它也可以像对象那样使用键值对,但还是索引使用得多。同样,值的类型可以是任意类型。
3.三种解析JSON数据的方法
1.JSON.parseArray():这个方法的作用就是将json格式的数据转换成数组格式。
假设有student这个类,json类型数据jsonStr=[{“name”:“张三”,“age”:“18”},{“name”:“李四”,“age”:“16”}],那么List list =json.paseArray(jsonStr,student.class);list就可以接收jsonStr了。
2.JSON.parseObject(String str):是将str转化为相应的JSONobject对象,其中str是"键值对"形式的json字符串,转化为JSONObject对象之后就可以使用其内置额方法,进行各种处理了。
3.JSON.toJSONString:则是将对象转化为Json字符串。在前后台的传输过程中,Json字符串是相当常用的。
具体代碼## 标题实现:
package jsonTest; import com.alibaba.fastjson.JSON; public class jsonTest { public static void main(String[] args) { /** * json字符串转化为对象 */ String jsonString = "{name:'tony',age:'20',sex:'male',telephone:'666666'}"; student stu = JSON.parseObject(jsonString, student.class); System.out.println(stu.toString()); /** * 对象转化为json字符串 */ String jsonStr = JSON.toJSONString(stu); System.out.println(jsonStr); } /** * json字符串转化为数组格式 */ List<student> list =json.paseArray(jsonStr,student.class); System.out.println(list); } }
JSON.parseObject,是将Json字符串转化为相应的对象;
在Java开发中,经常涉及实体对象和Json字符串之间的转换。通常需要将一个实体对象转换成Json字符串,使用FastJson来实现这种转换十分方便,只要使用FastJson中JSONObject静态类提供的toJSONString()静态方法即可。
使用JSONObject把实体对象转换成Json字符串时,如果实体对象中有些属性的值为null,则默认转换后的Json字符串中是不包含这些值为null的属性。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。