json格式数据简介
2016-09-28 14:15
267 查看
昨晚在22班上课,目前是jsp部分,没有使用Servlet作为控制层,直接在jsp文件中写入java代码,但在新闻系统的前台需要实现局部刷新功能,使用Ajax提交方式完成,关于对象的数据传输相对麻烦些,所以我们自己模拟了json格式数据传递,最后通过js代码转换完成项目。简介给大家介绍下json格式数据:
JSON(JavaScript Object
Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。
JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。
易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
数据在键值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:
这很容易理解,等价于这条 JavaScript 语句:
数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null
所以我们在Message实体类中重写了toString();
public String toString(){
return "{\"m_id\":\""+this.m_id+"\",\"m_info\":\""+this.m_info+"\",\"m_author\":\""+this.m_author+"\",\"m_date\":\""+this.m_date+"\"}";
}
JSON[1] 结构有两种结构[2]
json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构。
1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 ["java","javascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
经过对象、数组2种结构就可以组合成复杂的数据结构了。
为了满足Js中的需求,我们将查询的list集合中的数据转为json字符串:
JSONUtil:
public <T> String toArray(List <T> list){
StringBuffer sb = new StringBuffer();
sb.append("[");
for(int i =0 ; i<list.size( ); i++){
if(i==list.size()-1){
sb.append(list.get(i).toString()+"]");
}else{
sb.append(list.get(i).toString()+",");
}
}
}
jsp页面转为对象数据
var json = eval("("+data+")");
for(int i =0;i<json.length;i++){
console.info(json[i].m_id+"----"+json[m].m_author);
}
能获取到每个对象中的属性后,那么通过Js代码可以将值写入页面中。
所以大家在做新闻系统的时候目前采取此方式完成,后期我们会学习相应工具完成。
JSON(JavaScript Object
Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。
JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。
易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。
JSON 语法规则
JSON 语法是 JavaScript 对象表示语法的子集。数据在键值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
JSON 名称/值对
JSON 数据的书写格式是:名称/值对。名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:
1 | "firstName":"John" |
1 | firstName="John" |
JSON 值
JSON 值可以是:数字(整数或浮点数)
字符串(在双引号中)
逻辑值(true 或 false)
数组(在方括号中)
对象(在花括号中)
null
所以我们在Message实体类中重写了toString();
public String toString(){
return "{\"m_id\":\""+this.m_id+"\",\"m_info\":\""+this.m_info+"\",\"m_author\":\""+this.m_author+"\",\"m_date\":\""+this.m_date+"\"}";
}
JSON[1] 结构有两种结构[2]
json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构。
1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,...}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。
2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 ["java","javascript","vb",...],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。
经过对象、数组2种结构就可以组合成复杂的数据结构了。
为了满足Js中的需求,我们将查询的list集合中的数据转为json字符串:
JSONUtil:
public <T> String toArray(List <T> list){
StringBuffer sb = new StringBuffer();
sb.append("[");
for(int i =0 ; i<list.size( ); i++){
if(i==list.size()-1){
sb.append(list.get(i).toString()+"]");
}else{
sb.append(list.get(i).toString()+",");
}
}
}
jsp页面转为对象数据
var json = eval("("+data+")");
for(int i =0;i<json.length;i++){
console.info(json[i].m_id+"----"+json[m].m_author);
}
能获取到每个对象中的属性后,那么通过Js代码可以将值写入页面中。
所以大家在做新闻系统的时候目前采取此方式完成,后期我们会学习相应工具完成。
相关文章推荐
- 简介Objective-C解析XML与JSON数据格式的方法
- JSON数据格式简介
- 为您解惑:jQuery中$.getJSON( )的使用方法简介之获取JSON格式的数据.........
- JSON数据格式简介
- JSON数据格式简介
- JSON数据格式简介
- JSON格式数据简介
- JSON数据格式的简介
- 2.0通信之调用REST服务,处理JSON格式, XML格式, RSS/ATOM格式的数据
- 关于数据交换格式XML和JSON的比较
- jsp向EXTJS返回json格式数据
- JSON JavaScript数据交换格式
- JSON 数据格式解析
- 表格转为JSON数据格式
- 一个java处理JSON格式数据的通用类(封装了一个class)
- Ext2.2与Struts2集成,使用Json数据格式传输数据问题
- ActionScript3中的JSON数据格式
- JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式
- 扩展了一棵jquery的树插件SimpleTree,加上了json格式数据异步加载能力
- GWT与JSON(使用JSON格式的数据通讯)