小试json
JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。
还有一些其它的规则,如数组等,具体请看.
http://www.json.org/json-zh.html
需导入的包:
Json包: json-lib.jar开发包使用
依赖包:
commons-beanutils.jar;
commons-httpclient.jar;
commons-lang.jar;
ezmorph.jar;
morph-1.0.1.jar;
一、首先,来看一个简单的json数据例子
代码如下:
1 <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
3 <html>
4 <head>
5 <title>My JSP 'index.jsp' starting page</title>
6 <script type="text/javascript">
7 function showJSON(){
8 var user =
9 {
10 "username":"shenang",
11 "age":20,
12 "info": { "tel": "520", "cellphone": "520520"},
13 "address":
14 [
15 {"city":"beijing","postcode":"222333"},
16 {"city":"newyork","postcode":"555666"}
17 ]
18 }
19
20 //alert("name:"+user.username);
21 // alert("age:"+user.age);
22 //alert("tel:"+user.info.tel);
23 //alert("cell:"+user.info.cellphone);
24 //alert("add1:"+user.address[0].city);
25 //alert("add2:"+user.address[0].postcode);
26 alert("name:"+user.username+"\r\r"+"age:" + user.age);
27
28 }
29 </script>
30 </head>
31 <body>
32 <input type="button" onclick="showJSON()" value="使用这个script"/>
33 </body>
34 </html>
35
也可对对象中的值进行修改,如下:
User.username=”json”;
Alert(“username:”+json);
二、一个更深入的例子(对上面的例子进行改进)
如果我们的数据更加复杂,那么得将几个规则综合起来用,将数组和对象有机的结合,达到需求。
修改后的代码:
1 <%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
2 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
3 <html>
4 <head>
5 <title>My JSP 'MyJsp.jsp' starting page</title>
6 <script type="text/javascript">
7 function showJSON(){
8 var user = [
9 {"username":"json","age":20,"info":{"tel":"520","cellphone":"520520"}, "add":"beijin"},
10 {"username":"shenang","age":21, "info":{"tel":"521","cellphone":"521521"}, "add":"shanghui"},
11 {"username":"you","age":22, "info":{"tel":"522","cellphone":"522522"}, "add":"chongqing"}
12 ];
13 alert(user[0].info.tel);
14 alert(user[2].username)
15 }
16 </script>
17 </head>
18 <body>
19 <input type="button" onclick="showJSON()" value="使用这个script"/>
20 </body>
21 </html>
22
除了使用"."引用属性外,我们还可以使用下面语句:
Alert(user[0][“info”][“tel”])或者alert(user[0].into[“tel”])
总结:
· 现在读者应该对JSON的使用有点认识了,归纳为以下几点:
· 对象是属性、值对的集合。一个对象的开始于“{”,结束于“}”。每一个属性名和值间用“:”提示,属性间用“,”分隔。
· 数组是有顺序的值的集合。一个数组开始于"[",结束于"]",值之间用","分隔。
· 值可以是引号里的字符串、数字、true、false、null,也可以是对象或数组。这些结构都能嵌套。
· 字符串和数字的定义和C或Java基本一致。
同时可以参考:
http://www.cnblogs.com/Truly/archive/2006/12/31/608896.html
http://www.javaeye.com/topic/71343
http://p-x1984.javaeye.com/blog/314168
http://www.json.org/json-zh.html
posted on 2009-04-23 13:50
重庆理工小子 阅读(1588)
评论(1) 编辑 收藏 所属分类:
ajax编程