JavaWeb--Json的使用

一、什么是Json:

1、json 指的是JavaScript 对象表示法(JavaScript Object Notation)

2、json是轻量级的文本数据交换格式,易于人阅读和编写,同时也易于机器解析和生成

3、采用完全独立于语言的文本格式,而且受很多语言的支持

二、JSON在JavaScript中的使用

1 json的定义

json 是由键值对组成,并且由花括号包围,每个键由引号引起来,键和值之间使用冒号进行分隔,多组键值对之间用逗号进行分隔。

2 Json语法介绍

window.onload = function(){

    var json1 = {name:"haoren",password:123};

    var jsonArr = [{name:"huairen",age:12+23},{name:"zhangsan",age:23},{name:"lishi",age:13}]

    alert(json1.name);

    alert(json1.password);

    for(i=0;i<jsonArr.length;i++){

    alert(jsonArr[i].name+","+(jsonArr[i].age+10));

    }

    }

3 Json的两个常用方法

JSON 的存在有两种形式:

1、对象的存在形式,我们叫它JSON对象。在我们操作JSON中的数据的时候,需要使用JSON对象形式。
2、字符串的存在形式,我们叫它JSON字符串。在客户端和服务器端进行数据交换的时候,使用JSON字符串形式。


        JSON.stringify(jsonObject) :把 JSON对象转换成伟 JSON字符串。
        JSON.parse(jsonString) :把 JSON字符串转换成 JSON对象。

转换示例:

// 把 json对象转换成为 json字符串
var jsonObjString = JSON.stringify(jsonObj);
alert(jsonObjString);
// 把 json字符串,转换成为 json对象
var jsonObj2 = JSON.parse(jsonObjString);
alert(jsonObj2.key1);

三、示例

Servlet:

//利用json-lib快速的将javabean转换为了为json数据(包有点烦躁)
		List<User> list = new ArrayList<User>();
		list.add(new User("user1","2323",42));
		list.add(new User("user2","2324",46));
		list.add(new User("user3","2325",47));
		JSONArray ja = JSONArray.fromObject(list);
		//过滤掉一些字段
		//JsonConfig jc = new JsonConfig();
		//jc.setExcludes(new String[]{"password"});
		//JSONArray ja = JSONArray.fromObject(list,jc);
		
		response.getWriter().print(ja.toString());

jsp

function showInfo(){
			//alert(xmlHttp.readyState);
			if(xmlHttp.readyState == 4){
				if(xmlHttp.status == 200 || xmlHttp.status == 304){
					var jdata = eval("("+xmlHttp.responseText+")");
					//alert(jdata.name+":"+jdata.password+":"+jdata.age);
					alert(jdata[0].name+","+jdata[1].name+","+jdata[2].name+","+jdata[0].password);
				}
				
			}
			
		}

  • 12
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值