Java中JSON格式的简单应用例子
来源:互联网 发布:淘宝卖家学院光云科技 编辑:程序博客网 时间:2024/05/01 15:42
1. 网上支持JSON封装的JAR库包有很多,有些功能比较简单,有些提供的功能比较完善,比如org.json.simple包,太简单了,很多基础的功能都没有,而com.alibaba.fastjson包则比较完善,由于项目中已经有该包,所以直接使用。
2. JSON中主要的类有两个:JSONObject和JSONArray,前者和后者的区别是,前者封装下一层是用{}的方式,而后者是用[]的方式,后者是用在同一层次有多项记录的情况,也就是并列(数组)的情况。
3. 封装列子:
JSONObject json =new JSONObject(); //创建jsonobject对象
Map<String,String> map = new HashMap(); //创建map对象
JSONArray array =new JSONArray(); //创建jsonarray对象
Date date = newDate(); //获取当前时间对象
SimpleDateFormat sdf= new SimpleDateFormat("yyyyMMddHHmmss"); //时间转换格式
map.put("PROV_CODE","20");
map.put("DATA_SOURCE",local_id);
map.put("NODE_ID",node_id);
map.put("BATCH_CODE",batch_id);
map.put("BATCH_TYPE","0");
map.put("EVENT_TYPE_ID","0");
map.put("REC_RECORD_CNT",org_bill_list.size()+"");
map.put("REPEAT_RECORD_CNT",repeat_bill_list.size()+"");
map.put("START_TIME",sdf.format(date));
map.put("END_TIME",sdf.format(date));
array.add(map);
json.put("data",array);
System.out.println(json.toJSONString());
打印结果:
{"data":[{"BATCH_CODE":"1234","BATCH_TYPE":"0","DATA_SOURCE":"200","END_TIME":"20170210162223","EVENT_TYPE_ID":"0","NODE_ID":"127.0,0,1","PROV_CODE":"20","REC_RECORD_CNT":"0","REPEAT_RECORD_CNT":"0","START_TIME":"20170210162223"},{"$ref":"$.data[0]"}]}
--先用JSONArray封装两个并列的map,类似[{},{}]的格式,再用JSONObject在最外层封装一层,类似{“data”:[{},{}]}的格式。总而言之,同一层的多条并列加入json消息包时用JSONArray.add封装,外层封装内层时用JSONObject.put封装。
4. 解析例子
JSON的解析是用JSONObject.getJSONArray(key)来获取下一层的并列记录数组。用JSONArray.getJSONObject(intindex)的方式获取json数组中的具体jsonobject对象,再通过JSONObject.get(key)的方式获取某个标签下的数据信息。
- Java中JSON格式的简单应用例子
- java中Json格式数据的应用
- Java中Json格式数据的应用
- Java中Json格式数据的应用
- Java中Json格式数据的应用
- java json 简单例子
- struts2中Jquery的json使用(最简单的例子)
- JAVA对象转JSON的简单例子,一目了然
- 一个简单的json例子
- json解析的简单例子
- json格式的数据应用
- java生成json格式数据,一个简单的class
- json的简单应用
- json的简单应用
- JSON的简单应用
- java中Synchronized的一个简单例子
- ajax异步传输json格式的例子
- php输出json格式数据的例子
- OpenStack学习笔记(二)计算服务NOVA
- PL/SQL developer设置字符集
- Activity的Window创建过程
- 测试格式
- mysql事务_事务隔离级别详解
- Java中JSON格式的简单应用例子
- 加法变乘法
- React和Less错误解决集
- java概述
- Apache Ambari 01 - Ambari Mirror 安装部署
- 子集生成
- 虚拟机找不到/mnt/hgfs挂载目录
- RecyclerView自定义ItemDecoration
- mysql启动失败:mysql服务无法启动 服务没有报告任何错误 排查过程及解决方法