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. 关键点 ...
随机推荐
- UVa 11134 Fabled Rooks(贪心)
题目链接 题意 在n*n的棋盘上的n个指定区间上各放1个'车’ , 使他们相互不攻击(不在同行或同列),输出一种可能的方法. 分析 每行每列都必须放车,把行列分开看,若行和列同时有解,则问题有解. ...
- Python发邮件的小脚本
# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText mailto_list = ['hitwh_Gy ...
- Python数据分析学习目录
python数据分析学习目录 Anaconda的安装和更新 矩阵NumPy pandas数据表 matplotlib-2D绘图库学习目录
- 洛谷4718【模板】Pollard-Rho算法
传送门 Description: 给定T个数,分别求出它们的最大质因数 Solution: 其实大概框架是很容易想到的 对于一个数n 找到它的一个因数x 判断这个因数是不是质数 如果是质数就更新答案 ...
- POJ3233 Matrix Power Series(快速幂求等比矩阵和)
题面 \(solution:\) 首先,如果题目只要我们求\(A^K\) 那这一题我们可以直接模版矩乘快速幂来做,但是它现在让我们求$\sum_{i=1}^{k}{(A^i)} $ 所以我们思考一下这 ...
- 手动创建binary log files和手动编辑binary log index file会有什么影响
基本环境:官方社区版MySQL 5.7.19 一.了解Binary Log结构 1.1.High-Level Binary Log Structure and Contents • Binlog包括b ...
- 实例详析ImageView的adjustViewBonds和scaleType
android:adjustViewBounds是否保持宽高比.需要与maxWidth.MaxHeight一起使用,否则单独使用没有效果. 设置View的最大高度,单独使用无效,需要与setAdjus ...
- 2018-2019-2 网络对抗技术 20165227 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165227 Exp4 恶意代码分析 实验步骤: 使用的设备:Win7(虚拟机).kali(虚拟机) 实验一:使用如计划任务,每隔一分钟记录自己的电脑有哪些程 ...
- slf4j的简单用法以及与log4j的区别
之前在项目中用的日志记录器都是log4j的日志记录器,可是到了新公司发现都是slf4j,于是想着研究一下slf4j的用法. 注意:每次引入Logger的时候注意引入的jar包,因为有Logger的包太 ...
- Executor线程池的简单使用
我们都知道创建一个线程可以继承Thread类或者实现Runnable接口,实际Thread类就是实现了Runnable接口. 到今天才明白后端线程的作用:我们可以开启线程去执行一些比较耗时的操作,类似 ...