




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
没有落叶的秋-博客: /s/blog_8fbeeb59010153d3.htmlJquery遍历json的两种数据结构简介什么是JSON?JSON 即 JavaScript Object Natation(Java对象表示法),它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。简而言之,JSON就是JavaScript交换数据的一种格式。例子如下:username:coolcooldool,password:1230,usertype:superadminlist:password:1230,username:coolcooldool,password:thisis2,username:okokok第二种是有数组的情况,我也不用文字表述JSON到底是怎么构成的了,相信长眼睛的人都看懂了。为什么使用JSON而不是XML?尽管有许多宣传关于 XML 如何拥有跨平台,跨语言的优势,然而,除非应用于 Web Services,否则,在普通的 Web 应用中,开发者经常为 XML 的解析伤透了脑筋,无论是服务器端生成或处理 XML,还是客户端用 JavaScript 解析 XML,都常常导致复杂的代码,极低的开发效率。实际上,对于大多数 Web 应用来说,他们根本不需要复杂的 XML 来传输数据,XML 的扩展性很少具有优势,许多 AJAX 应用甚至直接返回 HTML 片段来构建动态 Web 页面。和返回 XML 并解析它相比,返回 HTML 片段大大降低了系统的复杂性,但同时缺少了一定的灵活性。如何使用?当然最直接的方法就是,你自己写一个类,把你在数据库中查到的list转换成Sting,格式就是JSON样子的就行,但前提是你比较牛叉,能很快写出来,并且是对的,第二种方式就是用第三方jar包(如:json-lib.jar,下载地址:/f/21122133.html?from=like或者jackson.jar,下载地址:/Code/Jar/j/Downloadjacksonjar.htm;),对于我这么不牛叉的人来说,我选第二种方法,人家写得好而且支持双向转换。下面主要介绍手写转换类。有了json格式的数据接下来写入流进行回调:String json=”jsonStr”;response.getWriter.write(json);以防出现乱码:在这之前加上:response.setContentType(“utf-8”);主要内容一、jquery遍历jsonlist二、js取得json值三、Jquery ajax请求格式如下四、Java:对象、list、javabean转换为json对象【一】五、Java:对象、list、javabean转换为json对象【二】六、Java:对象、list、javabean转换为json对象【三】1.jquery遍历jsonlistvararr=name:john,lang:js,name:nailwl,lang:jquery,name:吴磊,lang:ext;$.each(arr,function(index,content)alert(themansno.is:+index+,and++islearning+content.lang););2.js取得json值js中著名的eval函数varstrJSON=name:admin;/得到的JSONvarobj=eval(+strJSON+);/转换后的JSON对象alert();/admin3.Jquery ajax请求格式如下 function BtnClick() var uid = $(#Text1).attr(value); var pwd = $(#Text2).attr(value); $.ajax( url: server.php, type: post, data: UserName: uid, Password: pwd , /*!-第一种方法遍历json数据success: function(data) eval(datas = +data);var user = datas.userName; var pass = datas.password; $(#dd).html(用户名: + user + 密码: + pass + );-*/ /*第二种方法遍历json数据*/success: function(data) var json =eval(+data+);/这里中间的括号为中括号 使数据类似username:张三,content:沙发;的格式$.each(json, function(idx, item) var user = item.userName; var pass = item.password; $(#dd).html(用户名: + user + 密码: + pass + ); ); ); Java:对象、list、javabean转换为json对象【一】packagedsh.bikegis.tool;importjava.beans.IntrospectionException;importjava.beans.Introspector;importjava.beans.PropertyDescriptor;importjava.util.List;/*json的操作类*authorNanGuoCan*/publicclassJsonUtil/*paramobject*任意对象*returnjava.lang.String*/publicstaticStringobjectToJson(Objectobject)StringBuilderjson=newStringBuilder();if(object=null)json.append();elseif(objectinstanceofString|objectinstanceofInteger)json.append().append(object.toString().append();elsejson.append(beanToJson(object);returnjson.toString();/*功能描述:传入任意一个javabean对象生成一个指定规格的字符串*parambean*bean对象*returnString*/publicstaticStringbeanToJson(Objectbean)StringBuilderjson=newStringBuilder();json.append();PropertyDescriptorprops=null;tryprops=Introspector.getBeanInfo(bean.getClass(),Object.class).getPropertyDescriptors();catch(IntrospectionExceptione)if(props!=null)for(inti=0;iprops.length;i+)tryStringname=objectToJson(propsi.getName();Stringvalue=objectToJson(propsi.getReadMethod().invoke(bean);json.append(name);json.append(:);json.append(value);json.append(,);catch(Exceptione)json.setCharAt(json.length()-1,);elsejson.append();returnjson.toString();/*功能描述:通过传入一个列表对象,调用指定方法将列表中的数据生成一个JSON规格指定字符串*paramlist*列表对象*returnjava.lang.String*/publicstaticStringlistToJson(Listlist)StringBuilderjson=newStringBuilder();json.append();if(list!=null&list.size()0)for(Objectobj:list)json.append(objectToJson(obj);json.append(,);json.setCharAt(json.length()-1,);elsejson.append();returnjson.toString();Java:对象、list、javabean转换为json对象【二】package young.ajax.json;import java.beans.IntrospectionException;import java.beans.Introspector;import java.beans.PropertyDescriptor;import java.math.BigDecimal;import java.math.BigInteger;import java.util.List;import java.util.Map;import java.util.Set;import mons.logging.Log;import mons.logging.LogFactory;public class JsonUtil private static Log log = LogFactory.getLog(JsonUtil.class);public static String object2json(Object obj) StringBuilder json = new StringBuilder(); if (obj = null) json.append(); else if (obj instanceof String | obj instanceof Integer | obj instanceof Float | obj instanceof Boolean | obj instanceof Short | obj instanceof Double | obj instanceof Long | obj instanceof BigDecimal | obj instanceof BigInteger | obj instanceof Byte) json.append().append(string2json(obj.toString().append(); else if (obj instanceof Object) json.append(array2json(Object) obj); else if (obj instanceof List) json.append(list2json(List) obj); else if (obj instanceof Map) json.append(map2json(Map) obj); else if (obj instanceof Set) json.append(set2json(Set) obj); else json.append(bean2json(obj); return json.toString(); public static String bean2json(Object bean) StringBuilder json = new StringBuilder(); json.append(); PropertyDescriptor props = null; try props = Introspector.getBeanInfo(bean.getClass(), Object.class).getPropertyDescriptors(); catch (IntrospectionException e) if (props != null) for (int i = 0; i props.length; i+) try String name = object2json(propsi.getName(); String value = object2json(propsi.getReadMethod().invoke(bean); json.append(name); json.append(:); json.append(value); json.append(,); catch (Exception e) json.setCharAt(json.length() - 1, ); else json.append(); return json.toString(); public static String list2json(List list) StringBuilder json = new StringBuilder(); json.append(); if (list != null & list.size() 0) for (Object obj : list) json.append(object2json(obj); json.append(,); json.setCharAt(json.length() - 1, ); else json.append(); return json.toString(); public static String array2json(Object array) StringBuilder json = new StringBuilder(); json.append(); if (array != null & array.length 0) for (Object obj : array) json.append(object2json(obj); json.append(,); json.setCharAt(json.length() - 1, ); else json.append(); return json.toString(); public static String map2json(Map map) StringBuilder json = new StringBuilder(); json.append(); if (map != null & map.size() 0) for (Object key : map.keySet() json.append(object2json(key); json.append(:); json.append(object2json(map.get(key); json.append(,); json.setCharAt(json.length() - 1, ); else json.append(); return json.toString(); public static String set2json(Set set) StringBuilder json = new StringBuilder(); json.append(); if (set != null & set.size() 0) for (Object obj : set) json.append(object2json(obj); json.append(,); json.setCharAt(json.length() - 1, ); else json.append(); return json.toString(); public static String string2json(String s) if (s = null) return ; StringBuilder sb = new StringBuilder(); for (int i = 0; i = u0000 & ch = u001F) String ss = Integer.toHexString(ch); sb.append(u); for (int k = 0; k 4 - ss.length(); k+) sb.append(0); sb.append(ss.toUpperCase(); else sb.append(ch); return sb.toString(); Java:对象、list、javabean转换为json对象【三】package young.ajax.json;import java.util.HashMap;import java.util.List;import java.util.Map;import net.sf.json.JSONArray;import net.sf.json.JSONException;import net.sf.json.JSONObject;public class JsonConvert public static JSONObject message(String message, boolean success) Map map = new HashMap(); map.put(success, success); map.put(message, message); return JSONObject.fromObject(map); public static JSONObject generate(List list) Map map = new HashMap(); map.put(totalProperty, list.size(); map.put(root, list); return JSONObject.fromObject(map); public static JSONObject javabean2json(Object object, String message, boolean success) Map map = new HashMap(); map.p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉字真有趣课件状元成才路
- 审计人员工作总结(集锦15篇)
- 四川省凉山州2024-2025学年高一上学期期末考试物理试卷(含解析)
- 湖北省荆州市荆州中学2026届高三上学期8月月考语文试卷(含答案)
- 3ds Max室内设计效果图制作知到智慧树答案
- 《企业出纳实务》知到智慧树答案
- “趣”说产品设计(山东联盟)知到智慧树答案
- 2025购销个人物品合同协议书
- 汉字“不”字的起源课件
- 水运物流知识培训课件
- 道路建设三级安全教育培训
- 病历的书写规范讲课幻灯课件
- 征兵业务培训
- 心功能不全病人的护理查房
- NCCN成人癌痛指南
- 地理与生活密切相关
- 望闻问切中医四诊
- 订单交期管理制度流程
- 动画制作员职业技能大赛考试题库(浓缩500题)
- 动画制作员职业技能竞赛理论考试题库(含答案)
- 妊娠合并脓毒血症护理查房
评论
0/150
提交评论