先来看看JSON:


什么是JSON:

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。

JSON是用字符串来表示Javascript对象,例如可以在Servlet中发送一个JSON格式的字符串给客户端Javascript,Javascript可以执行这个字符串,得到一个Javascript对象。

XML也可以用来作为数据交换,前面已经学习过在Servlet中发送XML给Javascript,然后Javascript再去解析XML。

JSON对象语法:

------数据在名称/值对中

------数据由逗号分隔

------花括号保存对象

------方括号保存数组

var person = {"name":"zhangSan", "age":"18", "sex":"male"};
alert(person.name + ", " + person.age + ", " + person.sex);

注意,key也要在双引号中!

JSON值:

------数字(整数或浮点数)

------字符串(在双引号中)

------逻辑值(true 或 false)

------数组(在方括号中)

------对象(在花括号中)

------null

var person = {"name":"zhangSan", "age":"18", "sex":"male", "hobby":["cf", "sj", "ddm"] };
alert(person.name + ", " + person.age + ", " + person.sex + ", " + person.hobby);

带有方法的JSON对象:

var person = {"name":"zhangSan", "getName":function() {return this.name;}};
alert(person.name);
alert(person.getName());

JSON与XML比较:

------可读性:XML胜出;

------解码难度:JSON本身就是JS对象(主场作战),所以简单很多;

------流行度:XML已经流行好多年,但在AJAX领域,JSON更受欢迎。

把Java对象转换成JSON对象:

apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串。也可以把JavaBean转换成JSON字符串。

json-lib的核心jar包有:

------json-lib.jar

json-lib的依赖jar包有:

------commons-lang.jar

------commons-beanutils.jar

------commons-logging.jar

------commons-collections.jar

------ezmorph.jar

json-lib中的核心类:

在json-lib中只有两个核心类:

------JSONObject;

------JSONArray;

JSONObject:

JSONObject类本身是一个Map,所以学习它很方便。

JSONObject jo = new JSONObject();
jo.put("name", "zhangSan");
jo.put("age", "18");
jo.put("sex", "male");
System.out.println(jo.toString()); Person person = new Person("liSi", 18, "female");
JSONObject jo = JSONObject.fromObject(person) ;
System.out.println(jo.toString());Map map = new HashMap();
map.put("name", "wangWu");
map.put("age", "81");
map.put("sex", "male");JSONObject jo = JSONObject.fromObject(map) ;
System.out.println(jo.toString());String xml = "<person><name>zhaoLiu</name><age>59</age><sex>female</sex></person>";
XMLSerializer serial = new XMLSerializer();
JSONObject jo = (JSONObject)serial.read(xml);
System.out.println(jo.toString());

JSONArray:

JSONArray本身是一个List,所以使用起来很方便。

JSONArray ja = new JSONArray();
Person p1 = new Person("zhangSan", 18, "male");
Person p2 = new Person("liSi", 23, "female");
ja.add(p1);
ja.add(p2);System.out.println(ja.toString());Person p1 = new Person("zhangSan", 18, "male");
Person p2 = new Person("liSi", 23, "female");
List<Person> list = new ArrayList<Person>();
list.add(p1);
list.add(p2);JSONArray ja = JSONArray.fromObject(list) ;System.out.println(ja.toString());Person p1 = new Person("zhangSan", 18, "male");
Person p2 = new Person("liSi", 23, "female");
Person[] persons = {p1, p2};JSONArray ja = JSONArray.fromObject(persons) ;System.out.println(ja.toString());

JS解释服务器发送过来的JSON字符串:

服务器发送过来JSON字符串后,客户端需要对其进行解析。这时客户端需要使用eval()方法对JSON字符串进行执行!但要注意,eval()方法在执行JSON时,必须把JSON字符串使用一对圆括号括起来。

var json = "{\"name\":\"zhangSan\", \"age\":\"18\", \"sex\":\"male\"}";
var person = eval("(" + json + ")");
alert(person.name + ", " + person.age + ", " + person.sex);

END

转载于:https://www.cnblogs.com/Arry10/p/7731785.html

json及JavaBean转json相关推荐

  1. FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换

    fastJson对于json格式字符串的解析主要用到了一下三个类: JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换. JSONObject:fas ...

  2. IDEA使用GsonFormat完成JSON和JavaBean之间的转换

    点击上方 好好学java ,选择 星标 公众号重磅资讯,干货,第一时间送达今日推荐:分享一套基于SpringBoot和Vue的企业级中后台开源项目,这个项目有点哇塞!个人原创100W +访问量博客:点 ...

  3. javabean与json转换(fastjson与jackson两个版本)

    [README] 本文演示了 javabean与json转换的开发方式: 要想 javabean的属性名 与 json的字段名不一致,也是可以转换的: 之前需要引入 ali.fastjson < ...

  4. fastjson 检测json格式_FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换...

    fastJson对于json格式字符串的解析主要用到了一下三个类: JSON:fastJson的解析器,用于JSON格式字符串与JSON对象及javaBean之间的转换. JSONObject:fas ...

  5. SpringCloud工作笔记047---FastJson解析多级JSON_FastJson解析嵌套JSON_FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换

    JAVA技术交流QQ群:170933152 解析嵌套json,这里说一下: //下面可以通过解析多级json的方式,获取数据,插入到数据库 //JSONObject userJsonObj = JSO ...

  6. json转java代码_Java代码:javabean和json互转

    使用jsonlib可以将javaBean和json进行相互转化 将一个对象转化成一个json字符串,如下:Student stu=new Student(); stu.setName("JS ...

  7. javabean和json互相转换

    工作中经常遇到javabean和json互相转换的场景.现就拿fastjson做为例子记录一下: json:{"body":{"password":" ...

  8. JavaBean转JSON

    JavaBean转JSON 在CSDN中看到了好几个类型的转换方式,导入不同的jar包,可执行的效果不一样,博主只是想把javabean类型转化为json类型数据,以下为几种不同的jar包的使用经历: ...

  9. 【Flutter】JSON 模型转换 ( JSON 序列化工具 | JSON 手动序列化 | 根据 JSON 编写 Dart 模型类 | 在线自动根据 JSON 转换 Dart 类 )

    文章目录 一.JSON 序列化工具 二.JSON 手动序列化 三.根据 JSON 编写 Dart 模型类 四.在线自动转换 五.相关资源 一.JSON 序列化工具 JSON 格式比较简单的话 , 使用 ...

最新文章

  1. Maven多工程的创建
  2. uni-app 使用 web-view 页面之间互相跳转、通信
  3. 《Excel 职场手册:260招菜鸟变达人》一第 20 招 怎样在单元格文字前加空白
  4. Love = Accounting
  5. File System Filter Driver Tutorial
  6. 用VS2012或VS2013在win7下编写的程序在XP下运行就出现“不是有效的win32应用程序
  7. 文科思维Java_开源之Processing:这好玩的编程语言是为文科生艺术家准备的
  8. max os取消开机启动
  9. ECS 云助手,实现云上运维自动化
  10. bugku之江湖魔头
  11. Gd-DTPA钆元素钆元素对比磁共振造影剂 氟-19磁共振/荧光双模态显影剂19F MRI
  12. 软件设计第一步——分离关注点和单一职责原则
  13. 案牍写作中要留意的问题
  14. MySQL查询,关于日期和时间戳,查询时间的记录
  15. 微信公众号12大互动技巧
  16. SW3518快充方案
  17. python中arcsec_python绘制基本初等函数图像
  18. ecshop商品页面附件下载,京东淘宝购买,自定义按钮自定义连接
  19. 51单片机玩转物联网基础篇05-控制继电器
  20. 带你理解beta分布

热门文章

  1. PAT_甲级_1002_C语言
  2. 【软件设计师】2020-08-06
  3. git 安装包_Git、TortoiseGit的安装、使用说明
  4. 任意进制转化 函数 模板(一)
  5. 【三分钟讲清区块链/比特币】之一:区块链入门教程
  6. JAVA Web Servlet中的异步处理 (2) -- Servlet3.1中的Non-blocking IO支持
  7. 大脑比机器智能_机器大脑的第一步
  8. deepin中zz_如何解决R中的FizzBu​​zz问题
  9. 导演李大为婚礼全过程(二)
  10. 让孩子尽快了解这个世界