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. 关键点 ...
随机推荐
- weblogic/tomcat Get乱码【转】
引用自:http://www.cnblogs.com/1995hxt/p/4982835.html (非常清晰) 其它好文 tomcat和weblogic设置编码方式 tomcat解决方案 在con ...
- jquery ajax 跨域请求【原】
前台 function sending(){ $.ajax({ type : "get",//jsonp只能get async:true, url : "/webcont ...
- Python中变量的属性以及判断方法
1.变量的属性 在Python中,创建一个变量会给这个变量分配三种属性: id ,代表该变量在内存中的地址: type,代表该变量的类型: value,该变量的值: x = 10 print(id(x ...
- Thrift 安装及使用
前言:由于最近在看storm Topology提交过程的源代码,写好的topology jar文件是通过Thrift RPC的形式提交给nimbus的.故了解下Thrift的基本原理. 参考:http ...
- Solr之.net操作
http://www.cnblogs.com/zhangweizhong/category/771055.html 插入: SolrNet.Startup.Init<Movie>(&quo ...
- 2018秋寒假作业4- -PTA编程总结1
PTA1打印沙漏.打印沙漏中的“沙漏形状”,就是每行输出的奇数符号与各行符号中心对齐:相邻两行符号数相差2:符号数从大到小递减到1,再从小到大递增.在做的时候出了几次错,编译发先是几个小地方出错了.以 ...
- 【洛谷P1896【SCOI2005】】互不侵犯King
题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 输入输出格式 输入格式: 只有一行,包 ...
- python - 迭代器(迭代协议/可迭代对象)
迭代器 # 迭代器协议 # 迭代协议:对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么就触发一个 StopIteration 异常,以终止迭代(只能往后走不能往前退) # 可迭代对 ...
- 原生JS给元素添加class属性
有下面这三种简单语句. document.getElementsByTagName('body')[0].className = 'snow-container'; //设置为新的 document ...
- Three.js基础探寻一
1.webGL 一种网络标准,定义了一些较底层的图形接口. 2.Three.js 一个3Djs库,webGL开源框架中比较优秀的一个.除了webGL以外,Three.js还提供了基于Canvas.SV ...