每天进步一点点,今天又学习了Json数据,觉得很好,总结如下:
主要参考了:
http://www.json.org/json-zh.html
http://www.oschina.net/bbs/thread/2353
JSon(JavaScript Object Notation)是一种轻量级的数据交换格式,比XML更轻巧,Json是JavaScript的原生格式,这意味着处理Json数据不需要任何特殊的API或工具包。
Json建构于两种结构:
“名称/值”对的集合和值的有序表。
下面举一个例子来说明:
Js代码:
-
function showJSON() {
-
var user =
-
{
-
"username":"andy",
-
"age":20,
-
"info": { "tel": "123456", "cellphone": "98765"},
-
"address":
-
[
-
{"city":"beijing","postcode":"222333"},
-
{"city":"newyork","postcode":"555666"}
-
]
-
}
-
-
alert(user.username);
-
alert(user.age);
-
alert(user.info.cellphone);
-
alert(user.address[0].city);
-
alert(user.address[0].postcode);
-
}
JSON提供了json.js包,下载http://www.json.org/json.js 后,将其引入然后就可以简单的使用object.toJSONString()转换成JSON数据。
js 代码
-
function showCar() {
-
var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");
-
alert(carr.toJSONString());
-
}
-
-
function Car(make, model, year, color) {
-
this.make = make;
-
this.model = model;
-
this.year = year;
-
this.color = color;
-
}
可以使用eval来转换JSON字符到Object
js 代码
-
function myEval() {
-
var str = '{ "name": "Violet", "occupation": "character" }';
-
var obj = eval('(' + str + ')');
-
alert(obj.toJSONString());
-
}
或者使用parseJSON()方法
js 代码
-
function myEval() {
-
var str = '{ "name": "Violet", "occupation": "character" }';
-
var obj = str.parseJSON();
-
alert(obj.toJSONString());
- }
-
-
使用JSON请求字符串就可以简单的生成JSONObject并进行解析,修改servlet添加JSON的处理(要使用json.jar)
java 代码
-
private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {
-
String s3 = request.getParameter("car");
-
try {
-
JSONObject jsonObj = new JSONObject(s3);
-
System.out.println(jsonObj.getString("model"));
-
System.out.println(jsonObj.getInt("year"));
-
} catch (JSONException e) {
-
e.printStackTrace();
-
}
-
response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");
-
}
同样可以使用JSONObject生成JSON字符串,修改servlet
java 代码
-
private void doService(HttpServletRequest request, HttpServletResponse response) throws IOException {
-
String s3 = request.getParameter("car");
-
try {
-
JSONObject jsonObj = new JSONObject(s3);
-
System.out.println(jsonObj.getString("model"));
-
System.out.println(jsonObj.getInt("year"));
-
} catch (JSONException e) {
-
e.printStackTrace();
-
}
-
-
JSONObject resultJSON = new JSONObject();
-
try {
-
resultJSON.append("name", "Violet")
-
.append("occupation", "developer")
-
.append("age", new Integer(22));
-
System.out.println(resultJSON.toString());
-
} catch (JSONException e) {
-
e.printStackTrace();
-
}
-
response.getWriter().print(resultJSON.toString());
-
}
js 代码
-
function jsonResponse(originalRequest) {
-
alert(originalRequest.responseText);
-
var myobj = originalRequest.responseText.evalJSON(true);
-
alert(myobj.name);
-
alert(myobj.age);
-
}
参考
http://www.json.org/js.html
http://www.blogjava.net/Jkallen/archive/2006/03/28/37905.html
http://www.json.org/
http://www.prototypejs.org/learn/json
http://www.json.org/java/index.html
http://www.ibm.com/developerworks/cn/web/wa-ajaxintro10/index.html
分享到:
相关推荐
VB利用官方api读写JSON数据格式文件简单实例,是一个非常、非常简单的例子…………
世界地图JSON数据格式
JSON数据格式检验,JSON数据类型检验,JSON数据检验,用于校验两个JSON字符串是否一样,包括数据格式一样,数据类型一样,数据值一样
json数据格式化(editplus 格式化 Json 工具 )
android系统利用json数据格式与服务器进行交互, 压缩包里有服务端代码和android端代码两个工程目录。 在win7系统用android4.1.2模拟器和Tomcat6服务器测试通过的, 注意根据自己的实际情况更改代码中的ip和端口...
jsonDB是js的一个类库,是基于json数据格式构建的数据模型实现对json数据增删改查。jsonDB的构建源自于HTML5本地存储的一个应用需求,可以通过sql对json数据进行增删改查,同时该类库提供强大的where检索条件,数据...
Json 数据格式化 jackson
json
vb6读写json格式文件,这里是源码,可以直接拿来使用。
json,json数据格式
资源名称:JSON数据格式介绍 中文WORD版内容简介:本文档主要讲述的是JSON数据格式介绍;JSON是 Javascript Object Notation的简称,是一种轻量的数据表示方法。jason格式采用key:value的方式记录数据,非常...
c语言json数据格式解析 c语言json数据格式解析 c语言json数据格式解析
json数据格式java解析jar包 提供了方便的解析json数据格式的工具
JSON数据格式.ppt
Json数据格式协议C#解析方法,分别介绍使用c#函数解析Json报文的方法
Spring返回json数据格式
最近接触到一个模块要用到json,主要是用于不同主机之间数据的传递,在网上收集了一些《JSON 数据格式解析》的资料,挺不错的……
Json数据格式的使用方法入门教程.pdf
json数据格式整理数据格式的说明文档
JSON 数据格式化 排版 UI图像示意 便于阅读和理解JSON数据结构 和 数据验证