JSON数据格式以及与后台交互数据转换实例
/* 作者:烟大阳仔 时间:20131013 介绍:主要了解一下json的格式,看看数据是怎么存储的
*/
<!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>Insert title here</title> <script type="text/javascript"> /* class person { Integer id; String name; } Person p=new Person(); */ //jason格式标识一个对象 var people={"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}; //alert(people.firstName); //json标识多个人 var people2= [ {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"} ] //alert(people2[1].firstName); //别名: var people3={"person": [ {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"} ] } //alert(people3.person[1].firstName); var people3={ "person1": [ {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"} ], "person2": [ {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"} ], "person3": [ {"firstName":"wy","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"}, {"firstName":"zhangsan","lastName":"hao","email":"1221@qq.com"} ] } //alert(people3.person3[0].firstName); </script> </head> <body>
</body> </html>
-------------------------------------------------------------------------------------------------------------
/* 作者:烟大阳仔 时间:20131013 介绍:主要了学习一下json与后台交互的时候数据的转换
*/
<!DOCTYPE html> <html> <head> <title>json2.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <!--<link rel="stylesheet" type="text/css" href="./styles.css">--> <script type="text/javascript"> function ajaxFunction() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) {
// Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {
try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("您的浏览器不支持AJAX!"); return false; } } } return xmlHttp; } window.onload=function() { document.getElementById("sub").onclick=function() { var xmlReq=ajaxFunction(); xmlReq.onreadystatechange=function() { if(xmlReq.readyState==4) { if(xmlReq.status==200||xmlReq.status==304) { var data=xmlReq.responseText; //{pid:1,pname:'山东省'} //alert(data); var dataObj=eval("("+data+")"); //alert(dataObj); //alert(dataObj.pname); for(var i=0;i<dataObj.length;i++) { alert(dataObj[i].id+" "+dataObj[i].addre); } } } } xmlReq.open("post","../jsonServlet?timeStamp="+new Date().getTime(),true); xmlReq.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //alert("adsada"); /* * 3.发送数据 * */ xmlReq.send("b=0"); } } </script> </head> <body> <input type="submit" value="提交" name="sub" id="sub"/> <select id="province" name="province"> <option value="">请选择...</option> </select> </body> </html>
package cn.com.Demo;
import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List;
import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray; import net.sf.json.JsonConfig;
import cn.com.bean.Province;
public class jsonServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setContentType("text/html; charset=utf-8"); PrintWriter out=response.getWriter(); System.out.println("---------------Post-----------------------"); System.out.println(request.getParameter("b")); //out.write("你好!"); //一个省份的时候 //String str2="{pid:1,pname:'山东省'}"; //out.write(str2); //多个省份的时候 //String str="[{pid:1,pname:'山东省'},{pid:2,pname:'四川'},{pid:3,pname:'北京'},{pid:4,pname:'上海'}]"; //out.write(str); // List<Province> list=new ArrayList<Province>(); Province p1=new Province(1,"山东"); Province p2=new Province(2,"北京"); Province p3=new Province(3,"上海"); list.add(p1); list.add(p2); list.add(p3); JsonConfig config=new JsonConfig(); config.setExcludes(new String[]{"id"}); JSONArray jsonArray=JSONArray.fromObject(list,config); out.write(jsonArray.toString()); System.out.println(jsonArray.toString()); }
}
JSON数据格式以及与后台交互数据转换实例的更多相关文章
- $Django ajax简介 ajax简单数据交互,上传文件(form-data格式数据),Json数据格式交互
一.ajax 1 什么是ajax:异步的JavaScript和xml,跟后台交互,都用json 2 ajax干啥用的?前后端做数据交互: 3 之前学的跟后台做交互的方式: -第一种:在浏览器 ...
- 如何用CropBox实现头像裁剪并与java后台交互
如何用CropBox实现头像裁剪并与java后台交互 参考网站:https://developer.mozilla.org/zh-CN/docs/Web/API/Blob 参考: http://blo ...
- struts2 + jquery + json 简单的前后台信息交互
ajax 是一种客户端与服务器端异步请求的交互技术.相比同步请求,大大提高了信息交互的速度和效率.是当下非常实用和流行的技术. 这里简单的说明 struts2 + jquery + json 下的 信 ...
- ajax简单后台交互
ajax简单后台交互 1,扯淡 单身的生活,大部分时间享受自由,小部分时间忍受寂寞. 生活有时候,其实蛮苦涩,让人难以下咽.那些用岁月积累起来的苦闷,无处宣泄,在自己的脑海里蔓延成一片片荆棘,让你每每 ...
- 一、Ajax 二、JSON数据格式 三、Ajax+Jquery 四、分页的实现
一.Ajax概述###<1>概述 ###<2>组成 以XMLHttpRequest为核心,发送Ajax请求和接收处理结果 以javascript为语言基础 以XML/JSON作 ...
- ECharts 与struts的后台交互之柱状图
ECharts主页: http://echarts.baidu.com/index.html ECharts-2.1.8下载地址: http://echarts.baidu.com/build/e ...
- 第4章-Vue.js 交互及实例的生命周期
一.学习目标 了解实例生命周期的过程 理解钩子函数的作用 掌握Vue.js过滤器的使用方法 (重点) 能够使用网络请求进行前后端交互 (重点.难点) 二.交互的基本概念 2.1.前端和后端的概念 说明 ...
- 微信小程序实战,与后台交互
index.wxml <view class="container"> <text>{{txt}}</text> <input name= ...
- AJAX优势、跨域方案及JSON数据格式和浏览器中JSON对象
ajax 不重新加载整个网页的情况下,更新部分网页的技术 注意:ajax只有在服务器上运行才能生效,我在本地一般用phpstudy 优点: 1.优化用户体验 2.承担了一部分本该服务器端的工作,减轻了 ...
随机推荐
- 浏览器兼容问题系列---使IE支持CSS3 Media Quary
兼容是一件很让前端攻城师头疼的事情,笔者今天在做一个Demo的时候就碰到了一个问题(大牛就不要拍砖了,谢谢!) 经常做移动互联网前端的攻城师想必对于css3 media quary已经很熟悉了,但是碰 ...
- 三个流行MySQL分支的对比
MySQL是历史上最受欢迎的免费开源程序之一.它是成千上万个网站的数据库骨干,并且可以将它(和Linux)作为过去10年里Internet呈指数级增长的一个有力证明. 那么,如果MySQL真的这么重要 ...
- asp.net SqlParameter关于Like的传参数无效问题
按常规的思路,我们会这样写 复制代码代码如下: String searchName ="Sam"; String strSql = "select * FROM Tabl ...
- 【 D3.js 高级系列 — 5.1 】 颜色插值和线性渐变
颜色插值指的是给出两个 RGB 颜色值,两个颜色之间的值通过插值函数计算得到.线性渐变是添加到 SVG 图形上的过滤器,只需给出两端的颜色值即可. 1. 颜色插值 在[高级 - 第 5.0 章]里已经 ...
- 在 ASP.NET MVC4 中使用 NInject
Ninject是一个快如闪电.超轻量级的基于.Net平台的依赖注入框架.它能够帮助你把应用程序分离成一个个松耦合.高内聚的模块,然后用一种灵活的方式组装起来.通过使用Ninject配套你的软件架构,那 ...
- memcache redundancy机制分析及思考
设计和开发可以掌控客户端的分布式服务端程序是件幸事,可以把很多事情交给客户端来做,而且可以做的很优雅.角色决定命运,在互联网架构中,web server必须冲锋在前,注定要在多浏览器版本以及协议兼容性 ...
- static用法详解
一. 面向过程程序设计 1.静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量.我们先举一个静态全局变量的例子,如下: //Example 1 #include & ...
- 021QTP之焦点(多思考)
一.什么是焦点: 焦点说白了就是你打开某一个程序时默认的focuse 比如我们那QTP自带的windows下的示例程序来说,启动它后焦点自动落在了agent name文本框上 二.利用Tab键检查焦点 ...
- 位图9宫格 BitmapSlice9.jsfl
/** * Version 1.1, May 4: fixed issue with symbols in library folders. **/ /** * BitmapSlice9 JSFL b ...
- python学习之optparse
Python 有两个内建的模块用于处理命令行参数: 一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数: 另一个是 optparse,它功能强大 ...