json基本数据类型(json数据特点)

JSON详解

一、JSON的概述及其使用

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于javascript的一个子集。JSON是的数据交换语言, 易于人阅读和编写,同时也易于解析和生成(一般用于提升网络传输速率)。JSON 可以将 JavaScript对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序,但是JavaScript很容易解释它, JSON 可以表示比"名称 / 值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表

JSON使用的示例如下所示:

<input type="button" value="json测试" onclick="jsonTest()"/>

<script>

function jsonTest()

{

var jsonStr={

"sid":"s001",

"sname":"lily",

"address":"北京海淀"

}

alert(jsonStr.sid);

alert(jsonStr.sname);

alert(jsonStr.address);

}

</script>

JSON嵌套的语法格式如下:

<input type="button" value="json测试" onclick="jsonTest()"/>

<script>

function jsonTest()

{

var j={"name":"Michael","address":

{"city":"Beijing","street":" Chaoyang Road ","postcode":100025}

};

document.write(j.name);

document.write(j.address.city);

}

</script>

二、将页面对象转化为json字符串并传递后台解析

1、将页面的数据对象转化为json 字符串

使用+拼页面的字符串,但是使用+违反面向对象原则,如果页面数据对象比较多,使用 +很容易出问题。这里我们使用struts2来操作json

<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>

<script src="js/jquery-1.6.2.js"></script>

<script src="js/json2.js"></script>

<form>

用户ID:<input type="text" id="usersid"/><br>

用户名:<input type="text" id="usersname"/><br>

密码:<input type="password" id="userspwd"/><br>

<input type="button" onclick="jsonTest()" value="确定"/>

</form>

<script>

function jsonTest()

{

var usersid_v=$("#usersid").val();

var usersname_v=$("#usersname").val();

var userspwd_v=$("#userspwd").val();

//构造对象

var jsonObj=new toJSONString("u001",'lily','123');

//将构造好的对象转化为json字符串

var jsonStr=JSON.stringify(jsonObj);

alert(jsonStr);

}

//构造函数:将页面字段构造成json对象

function toJSONString(usersid,usersname,userspwd) {

this.uid=usersid;

this.uname=usersname;

this.upwd=userspwd;

}

</script>

2、将json字符串传到后台

(1)、使用jquery的ajax

var jsonStr=JSON.stringify(jsonObj);

//alert(jsonStr);

$.post("/json001/sSON001Action",{myjsonStr:jsonStr},

function(data){

alert(data);

}

 

);

(2)、后台

public void json001()throws Exception{

 

System.out.println("进入 JSON001Action...");

HttpServletRequest request = ServletActionContext.getRequest();

HttpServletResponse response = ServletActionContext.getResponse();

String jsonStr = request.getParameter("myjsonStr");

System.out.println(jsonStr);

JSONObject jsonObj = JSONObject.fromObject(jsonStr);

String uid=(String)jsonObj.get("uid");

String uname=(String)jsonObj.get("uname");

String upwd=(String)jsonObj.get("upwd");

System.out.println(uid);

System.out.println(uname);

System.out.println(upwd);

PrintWriter out = response.getWriter();

out.println("ok");//将ok 写给前台

 

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论