json

简介:
json 是一种数据格式,本质上是字符串。比 xml 格式简单,所以适合前后端交互和后台传递简单数据
java 解析 Json 最常用的类库有:google 的 Gson、阿里巴巴的 FastJson、以及 Jackson。​​​​​spring提供了@ResponseBody 
js 解析 json 对象 用 json
  • 对象表示为键值对
  • 花括号保存对象
  • 方括号保存数组
  • 数据由逗号分隔

前端:

JSON.parse()    从一个字符串中解析出json对象,获取属性

JSON.stringify()    从一个对象中解析出字符串

后端:

JsonObject

依赖

com.google.gson.JsonObject    :组装json对象
com.google.gson.Gson    :对象 和 字符串 相互映射
com.google.gson.JsonElement    :数组对象 对象的 组装元素

java对象(将基本数据类型、以及 POJO 对象、List、Map 等) 转 json格式字符串:

Object obj;
Gson gson = new Gson();
String jsonStr = gson.toJson(obj);
//obj 对应 list,java实体类,字符串
[{"id":1,"heroName":"a1","power":"12","agile":"11"},{"id":2,"heroName":"a2","power":"12","agile":"11"}]
{"id":1,"heroName":"a1","power":"12","agile":"11"}
"aa"

组装 不同的java 对象 (map?)转 json字符串

JsonObject json = new JsonObject();
Gson gson = new Gson();
HeroModel a1 = new HeroModel("a1","11","11",1);
HeroModel a2 = new HeroModel("a2","22","22",2);
list.add a1,a2
json.addProperty("String",  "张三");
JsonElement c1 =   gson.toJsonTree(list);
json.add("list", c1);
System.out.println(json.toString());
//输出结果
{"String":"张三","list1":[{"id":1,"heroName":"a1","power":"11","agile":"11"},{"id":2,"heroName":"a2","power":"22","agile":"22"}]}

json字符串 转 对象(list,实体类,map)

//s1 对象的json字符串  s2:list对象的json字符串  s3:JsonObject对象的json字符串
HeroModel r1= (HeroModel)gson.fromJson(s1, HeroModel.class);
List<HeroModel> r2= gson.fromJson(s2,List.class);
Map r3 = gson.fromJson(s3, Map.class);

@ResponseBody:自动将返回值转化成json字符串。一个注解解决问题

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值