JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。
JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。具体细节参考http://www.json.org/json-zh.html
举个简单的例子:
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);
- }
这表示一个user对象,拥有username, age, info, address 等属性。
同样也可以用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);
-
-
user.username = "Tom";
- alert(user.username);
- }
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());
- }
下面使用prototype写一个JSON的ajax例子。
先写一个servlet (我的是servlet.ajax.JSONTest1.java)就写一句话
java 代码
- response.getWriter().print("{ \"name\": \"Violet\", \"occupation\": \"character\" }");
再在页面中写一个ajax的请求
js 代码
- function sendRequest() {
-
var url = "/MyWebApp/JSONTest1";
-
var mailAjax = new Ajax.Request(
- url,
- {
- method: 'get',
- onComplete: jsonResponse
- }
- );
- }
-
- function jsonResponse(originalRequest) {
- alert(originalRequest.responseText);
-
var myobj = originalRequest.responseText.parseJSON();
- alert(myobj.name);
- }
prototype-<st1:chsdate w:st="on" isrocdate="False" islunardate="False" day="30" month="12" year="1899">1.5.1</st1:chsdate>.js中提供了JSON的方法,String.evalJSON(), 可以不使用json.js, 修改上面的方法
js 代码
- function jsonResponse(originalRequest) {
- alert(originalRequest.responseText);
-
var myobj = originalRequest.responseText.evalJSON(true);
- alert(myobj.name);
- }
JSON还提供了java的jar包 http://www.json.org/java/index.html API也很简单,下面举个例子
在javascript中填加请求参数
js 代码
- function sendRequest() {
-
var carr = new Car("Dodge", "Coronet R/T", 1968, "yellow");
-
var pars = "car=" + carr.toJSONString();
-
-
var url = "/MyWebApp/JSONTest1";
-
var mailAjax = new Ajax.Request(
- url,
- {
- method: 'get',
- parameters: pars,
- onComplete: jsonResponse
- }
- );
- }
使用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 代码
分享到:
相关推荐
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递...通过提供的jar包和学习资料,初学者可以快速掌握JSON的基本概念和使用方法,从而在实际项目中得心应手地处理数据。
理解JSON的基本结构和类型,以及在JQuery中如何操作JSON,对于新手来说是学习Web开发的基础知识。通过实践,你可以掌握如何从服务器获取JSON数据,将其解析并显示在前端页面上,以及如何进行序列化和反序列化操作。
"JSON教程2.pdf"可能包含了更深入的JSON学习内容,比如JSON Schema,它定义了一种规范,用于验证JSON数据是否符合特定的结构要求,以确保数据的准确性和一致性。此外,还可能涵盖了JSON Pointer和JSON Patch,它们...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,易于人阅读和编写,...此外,熟悉JSON相关的工具和库,如在线JSON校验器、JSON编辑器等,也会对你的学习和工作带来便利。
jQuery+Json 实现Ajax无刷新分类管理实例演示 基于jquery+json实现的网站后台管理中无刷新的分类管理功能演示,如上...相当不错的Json学习资料,也是ASP.NET结合jQuery实现Ajax无刷新操作技术的典型实例,有必要借鉴。
JSON,全称JavaScript Object Notation,是一种轻量级的数据交换格式。它采用完全独立于语言的文本格式,但也使用了类似于C家族语言(包括C、C++、C#、Java、...学习和掌握JSON的使用,对于提升Web开发技能至关重要。
最基础最详细的json学习资料,这份资料几乎可以解决所有的你在json中的问题
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,设计简单易读,同时也...通过学习和掌握JSON,开发者可以更好地实现前后端的数据交互,提升应用程序的性能和用户体验。
总的来说,这个“json最全的资料”压缩包是学习和研究JSON的理想资源,它能够帮助开发者或初学者全面了解JSON的语法、使用方式以及在实际项目中的应用。无论是进行Web开发、移动应用开发还是API设计,JSON都是不可或...
4. 安全性:学习如何避免JSON注入攻击,确保数据安全传输。 5. 性能优化:理解如何高效地处理大量JSON数据,包括解析速度和内存使用。 在实际应用中,JSON广泛应用于Web服务,作为HTTP请求和响应中的数据格式。此外...
本学习资料专注于Java图形化实现JSON格式化的源码,旨在帮助开发者更好地理解和运用这一功能。 Java提供了多种库来处理JSON,如Jackson、Gson、org.json等。这些库不仅能够解析和生成JSON,还提供了格式化JSON的...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web应用程序之间传递数据。它以文本形式存储和传输数据,易于人阅读和编写,...学习和掌握JSON,对于任何Web开发者来说都是必不可少的技能。
基于jquery json实现的网站后台管理中无刷新的分类管理功能演示,如上图演示所示,可无刷新添加一个分类、在动画弹出...相当不错的Json学习资料,也是ASP.NET结合jQuery实现Ajax无刷新操作技术的典型实例,有必要借鉴。
5. **JSON Schema**:学习JSON Schema,这是一种JSON格式的规范,用于定义JSON数据的结构和验证规则。 通过以上内容的学习,你可以掌握Ajax的基础知识,了解DWR框架的应用,以及掌握JSON数据格式的处理。不断实践和...
在本压缩包中的“json入门博客资料”中,你可以找到一系列关于JSON的基础知识和在VS(Visual Studio)环境下如何进行开发的教程。 JSON是一种独立的语言无关的数据格式,但它与JavaScript语法高度相似。一个JSON...
本资源"JSON解析工具.rar"包含了关于JSON学习的相关资料,特别适合中级开发人员深入理解和掌握JSON的使用。 JSON是一种独立于语言的数据交换格式,但它的语法源自JavaScript对象表示法。其基本结构包括对象...
Ajax(ASynchronous JavaScript And XML):是一种在无需重新加载整个网页的情况下,能够...Json(JavaScript Object Notation) :现在多用于存储和交换文本信息的语法;进行数据的传输,SON 比 XML 更小、更快,更易解析。
在IT行业中,GoAhead是一种广泛使用的嵌入式Web服务器,尤其适用于物联网(IoT)设备和小型嵌入式系统。它的轻量级设计使得它在资源有限的ARM...对于从事物联网或嵌入式系统开发的工程师来说,这是一份宝贵的学习资料。