json
2015-07-24 19:07
666 查看
json简介
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构
1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,”javascript”,”vb”,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
经过对象、数组2种结构就可以组合成复杂的数据结构了。
这里举了一个关于创建json的java例子来说明json的格式。
先创建一个简单的StudentJson类 public class StudentJson { public StudentJson(int age,String name){ this.age=age; this.name=name; } int age; String name; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
创建一个json类来说明json的基本格式 import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JsonStudent { public static void main(String[] args) { StudentJson zhangsan=new StudentJson(18,"zhang san"); StudentJson lisi=new StudentJson(19,"lisi"); StudentJson wangwu=new StudentJson(20,"wangwu"); StudentJson zhaoliu=new StudentJson(21,"zhaoliu"); JSONObject obj=new JSONObject(); JSONArray array=new JSONArray(); array.add(zhangsan); array.add(lisi); array.add(wangwu); array.add(zhaoliu); obj.put("clazz", array); System.out.println(obj.toString()); } }
下面给出运行结果,可以对照上边的说明深入理解。
接下来再用一个例子来说明从json中解析提取信息
import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class JsonCreate { public static void main(String[] args) { String json = creatjson(); if (null!=json){ JSONObject clazz=JSONObject.fromObject(json); System.out.println(clazz.getString("clazzname")); JSONArray array=clazz.getJSONArray("student"); for (int i = 0; i < array.size(); i++) { JSONObject obj=array.getJSONObject(i); System.out.println(obj.getString("name ")); } } } public static String creatjson(){ JSONObject obj=new JSONObject(); obj.put("name ", "zhang san"); JSONObject obj1=new JSONObject(); obj1.put("name ", "li si"); JSONObject obj2=new JSONObject(); obj2.put("name ", "wang wu"); JSONObject obj3=new JSONObject(); obj3.put("name ", "zhao liu"); JSONArray array=new JSONArray(); array.add(obj); array.add(obj1); array.add(obj2); array.add(obj3); JSONObject jobj=new JSONObject(); jobj.put("clazzname", "clazz one grade one"); jobj.put("num", "3"); jobj.put("student",array); System.out.println(jobj); return jobj.toString(); } }
运行结果:
从中可以看出可以从复杂的json格式中提取到有用的简洁的信息
相关文章推荐
- JSON解析
- Javascript MVC 学习笔记(一) 模型和数据
- js简单运动
- js 10秒钟倒计时
- JavaScript——DOM或以树形展示的Web页面
- js添加input节点,删除input节点
- ajax js分页算法分析
- js数组去重的4个方法
- Backbone.js学习之旅(一)
- js点亮星星评分并获取参数的js代码
- 半角全角相互转换的js函数
- 使用istanbul做JavaScript的代码覆盖
- jsp 页面添加视频并显示播放时间
- JavaScript高级编程【BOM-location对象】
- JavaScript权威指南_137_第15章_脚本化文档_15.8-文档和元素的几何形状和滚动-关于元素尺寸、位置、溢出的更多信息
- 用js实现动态增加行
- 戏说javascript原型(prototype)实现面向对象
- C#中使用JSON
- highcharts作图
- Java、HTML、CSS、JSP、JavaScript注释语法