Json的简单使用
1>:推荐JSON学习的网址:http://www.w3school.com.cn/json/index.asp
2>:JSON:
JavaScript 对象表示法(JavaScript Object Notation),详细介绍呢,见上面的网址即可,这里重实践,轻理论,理论知识呢,去权威网站看比较靠谱。
3>重点介绍一个Javascript()函数:eval()函数;
用法见网址:http://www.w3school.com.cn/jsref/jsref_eval.asp
案例如下所示:
创建如index.jsp,源码如下;
注意:写法四和写法五
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>json的使用</title>
</head>
<body>
<script type="text/javascript">
//写法一,引进
var user={id:'1001',name:'张三'};
alert(user.id+" "+user.name); //写法二,引进
var person={id:'1002',eat:function(){
alert("李四爱吃饭");
}};
alert(person.id);
person.eat(); //写法三,实践
//eval()方法的使用
var a='alert("提示的信息")';
//eval() 函数可计算某个字符串,并执行其中的的 JavaScript代码
eval(a); //写法四,实践
var teacher={id:'1003',name:'王五'};
var tea=eval(teacher);
alert("编号:"+tea.id+" "+"姓名:"+tea.name); //写法五,实践
var teacher="{id:'1003',name:'王五'}";
var tea=eval("("+teacher+")");
alert("编号:"+tea.id+" "+"姓名:"+tea.name); </script> </body>
</html>
效果如下所示:

4>JSON数组的使用,创建一个json.jsp,源码如下所示:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>json的练习</title>
</head>
<body>
<script type="text/javascript">
//JSON数组,如何在页面显示json的数组格式
var emp={"totle":5,"employees":[
{"id":1001,"name":'张三'},
{"id":1002,"name":'李四'},
{"id":1003,"name":'王五'},
{"id":1004,"name":'赵六'},
{"id":1005,"name":'周七'}
]}; alert("雇员总数:"+emp.totle);
for(var i=0;i<emp.employees.length;i++){
alert(emp.employees[i].id+" "+emp.employees[i].name);
} </script> </body>
</html>
演示效果如下所示:

5>思考如何将后台的数据格式构建成前台页面显示的格式呢???
第一种方式:手动构建,想想都够蛋疼的了,太麻烦了,手动构建;
String json="{'id:'"+user.getId()+",'name:'"+user.getName()+"}";
package com.bie.test; import com.bie.po.User; /**
* @author BieHongLi
* @version 创建时间:2017年3月9日 上午11:11:24
*
*/
public class UserTest { public static void test1(){
//数据库查询的记录
User user=new User();
user.setId(1001);
user.setName("张三"); //如何将后台的数据构建成为json格式呢"" ==> {} ==> "" ==> ++ ==> ''
String json="{'id:'"+user.getId()+",'name:'"+user.getName()+"}";
System.out.println(json);
} public static void main(String[] args) {
//调用第一个test1()方法
test1();
} }
演示效果如下所示:

第二种方式:使用apache下面封装好的jar包
(1):第一步,导入json的jar包,如下所示的jar包;
链接:http://pan.baidu.com/s/1jH6gN46 密码:lbh1

(2):开始使用apache这个公益组织封装好的jar进行测试;
分别测试将对象,将数组,将集合转化为json格式。
牢记,熟练应用集合转化为json格式。
package com.bie.test; import com.bie.po.User; import net.sf.json.JSONObject; /**
* @author BieHongLi
* @version 创建时间:2017年3月9日 上午11:11:24
*
*/
public class UserTest { public static void test1(){
//数据库查询的记录
User user=new User();
user.setId(1001);
user.setName("张三"); //如何将后台的数据构建成为json格式呢"" ==> {} ==> "" ==> ++ ==> ''
String json="{'id:'"+user.getId()+",'name:'"+user.getName()+"}";
System.out.println(json);
} //将对象转化为json
public static void test2(){
//数据库查询的记录
User user=new User();
user.setId(1002);
user.setName("李四"); //一定要引入所需的jar包,才可以使用此对象哦
JSONObject obj=JSONObject.fromObject(user);
System.out.println(obj);
} public static void main(String[] args) {
//调用第一个test1()方法
//test1(); //调用第二个test2()方法
test2(); } }
演示效果如下所示:

下面是将数组和集合转化为json格式的,最重要的是将集合转化为json格式的哦。
package com.bie.test; import java.util.ArrayList;
import java.util.List; import com.bie.po.User; import net.sf.json.JSONArray;
import net.sf.json.JSONObject; /**
* @author BieHongLi
* @version 创建时间:2017年3月9日 上午11:11:24
*
*/
public class UserTest { public static void test1(){
//数据库查询的记录
User user=new User();
user.setId(1001);
user.setName("张三"); //如何将后台的数据构建成为json格式呢"" ==> {} ==> "" ==> ++ ==> ''
String json="{'id:'"+user.getId()+",'name:'"+user.getName()+"}";
System.out.println(json);
} //将对象转化为json
public static void test2(){
//数据库查询的记录
User user=new User();
user.setId(1002);
user.setName("李四"); //一定要引入所需的jar包,才可以使用此对象哦
JSONObject obj=JSONObject.fromObject(user);
System.out.println(obj);
} //将数组转化为json
public static void test3(){
String[] arr={"张三","李四","王五"};
JSONArray array=JSONArray.fromObject(arr); System.out.println(array);
} //将ArrayList转化为json格式
public static void test4(){
List<User> list=new ArrayList<>();
for(int i=0;i<10;i++){
User user=new User(i,"张三"+i);
list.add(user);
} JSONArray listArray=JSONArray.fromObject(list);
System.out.println(listArray); } public static void main(String[] args) {
//调用第一个test1()方法
//test1(); //调用第二个test2()方法
//test2(); //调用第第三个test3()方法
//test3(); //调用第四个test4()方法
test4();
} }
演示 效果如下所示:

JSON和AJAX更搭配哦,必会哦,向着胜利的曙光,go!!!
Json的简单使用的更多相关文章
- json-lib简单处理json和对json的简单介绍
JSON 1.json是什么? *它是js提供的一种数据交换格式 2.json的语法 *{}:是对象! >属性名必须使用双引号括起来!单引号不行!!! >属性值: *null *数值 *数 ...
- js中json数据简单处理(JSON.parse()和js中嵌套html)
js中json数据简单处理(JSON.parse()和js中嵌套html) 一.总结 1.html中嵌套js:<script>js代码</script> 2.js中嵌套html ...
- Python中json的简单读写操作
Python中json的简单读写操作 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的 ...
- golang json 包简单分析
首先上代码: func main() { b := true a1, _ := json.Marshal(b) a2, _ := Marshal(b) fmt.Println(string(a1)) ...
- JSON.NET 简单的使用
JSON.NET(http://json.codeplex.com/)使用来将.NET中的对象转换为JSON字符串(序列化?),或者将JSON字符串转换为.NET中已有类型的对象(反序列化?) 首先为 ...
- android json 解析 简单示例
1 下面是一个简单的json 解析的demo,废话不多说,直接上代码 package com.sky.gallery; import java.io.ByteArrayOutputStream; im ...
- Android+Servlet+MySql+JSON实现简单的数据查询操作--C/S架构
本例简单地实现Android客户端与服务器端交互,主要是通过客户端输入内容(学号)提交到服务器端,服务器端与数据库交互去查询相应信息(姓名).根据这个做个完整的安卓登录是没问题的.本例数据库服务器都采 ...
- java post请求的表单提交和json提交简单小结
在java实现http请求时有分为多种参数的传递方式,以下给出通过form表单提交和json提交的参数传递方式: public String POST_FORM(String url, Map< ...
- JSON的简单介绍以及C语言的JSON库使用
JSON概述 JSON: JavaScript 对象表示法( JavaScript Object Notation) .是一种轻量级的数据交换格式. 它基于ECMAScript的一个子集. JSON采 ...
- Struts2+json+hignchart(简单柱状图实现--适合jquery小白)
做了一个简单的基于Struts2 + Json + HighChart的小例子,费了一下午+晚上的时间,虽然简单,但对于我这种Jquery+Ajax小白的人还是很值得记录的. 哈哈哈 # 0. 关键点 ...
随机推荐
- Linux 4.10.8 根文件系统制作(二)---制作jiffs文件系统
一.制作jiffs文件系统 制作jffs2 文件系统需要用到 mkfs.jffs2工具. 执行命令: mkfs.jffs2 -n -s 0x800 -e 0x20000 --pad=0x800000 ...
- pyqt5 添加属性-类方法用属性形式访问
方法一 装饰器法 import sys from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QHBoxLayout,QLab ...
- OO第三阶段总结
软件形式化方法历史 形式化方法的研究高潮始于20世纪60年代后期,针对当时所谓"软件危机",人们提出种种解决方法,归纳起来有两类:一是采用工程方法来组织.管理软件的开发过程:二是深 ...
- ubuntu 14.04界面美化
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABVYAAAMACAIAAABAXKuVAAAAA3NCSVQICAjb4U/gAAAgAElEQVR4Xu
- mysql系列十二、mysql常用hint
对于经常使用oracle的朋友可能知道,oracle的hint功能种类很多,对于优化sql语句提供了很多方法.同样,在mysql里,也有类似的hint功能.下面介绍一些常用的. 强制索引 FORCE ...
- C++:explicit关键字
在C++中,如果一个类的构造函数只有一个形参,在这种情况下,可以直接将一个对应于构造函数参数类型的数据直接赋值给类变量,编译器在编译时会自动进行类型转换,将对应于构造函数参数类型的数据转换为类的对象, ...
- sga 操作命令
用SYS用户以SYSDBA身份登录系统alter system set sga_max_size=2000m scope=spfile;alter system set sga_target=2000 ...
- saltstack自动化运维系列②之saltstack的数据系统
saltstack自动化运维系列②之saltstack的数据系统 grains:搜集minion启动时的系统信息,只有在minion启动时才会搜集,grains更适合做一些静态的属性值的采集,例如设备 ...
- listener failed: zbx_tcp_listen() fatal error: unable to serve on any address [[-]:20050]
故障现象: 客户端报错:service zabbix-agent 启动后,端口没有被正常监听,服务端也无法正常连接 将客户端改为二进制文件安装也不能正常启动/usr/local/zabbix/sbin ...
- centos系统初始化流程及实现系统裁剪
Linux系统的初始化流程: POST:ROM+RAM BIOS: Boot Sequence MBR: 446:bootloader 64: 分区表 2: 5A kernel文件:基本磁盘分区 /s ...