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

Be JSON:在线JSON校验格式化工具 www.bejson.com

需求:编写代码生成如下的json,并打印输出,并得到其中的某一元素”城市“的列表:

[
{“城市”:“北京”,“面积”:16800,“人口”:1600}, {“城市”:“上海”,“面积”:6400,“人口”:1800}
]

需要用到的jar包:

commons-beanutils-1.8.0.jar
commons-collections.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
ezmorph-1.0.4.jar
json-lib-2.4-jdk15.jar

有如下两种方式生成:

1.通过操作对象的形式,将键值对一个个加进去

代码1:

public static void jsonTest() {

	JSONArray json = new JSONArray(); 

    JSONObject member1 = new JSONObject();
member1.put("城市", "北京");
member1.put("面积", "16800");
member1.put("人口","1600");
json.add(member1); JSONObject member2 = new JSONObject();
member2.put("城市", "上海");
member2.put("面积", "6400");
member2.put("人口","1800");
json.add(member2); System.out.println(json.toString()); for(int i=0;i<json.size();i++){
System.out.println(json.getJSONObject(i).get("城市"));
//也可以采用jsonPath来取值,"$.[0].城市"和"$.[1].城市"
System.out.println(JsonPath.read(json, "$.["+i+"].城市"));
}
}

2.直接将字符串转换成json

代码2:

private static void jsonTest2() {
//注意此处的引号应加上转义字符
String str ="[{\"城市\":\"北京\",\"面积\":\"16800\",\"人口\":\"1600\"},{\"城市\":\"上海\",\"面积\":\"6400\",\"人口\":\"1800\"}]";
JSONArray json = JSONArray.fromObject(str); System.out.println(json.toString()); for(int i=0;i<json.size();i++){
System.out.println(JsonPath.read(json, "$.["+i+"].城市"));
}
}

上面两种方式的输出结果是一样的,均为:

[{"城市":"北京","面积":"16800","人口":"1600"},{"城市":"上海","面积":"6400","人口":"1800"}]
北京
上海

Java生成json的更多相关文章

  1. java生成Json工具之JsonSimple的使用

    json-simple是由是Google开发的Java JSON解析框架,基于Apache协议.目前版本为1.1 项目主页:https://code.google.com/p/json-simple/ ...

  2. java生成json字符串的方法

    例1:将map对象添加一次元素(包括字符串对.数组),转换成json对象一次. 代码: package com.json; //这是使用org.json的程序: import java.util.Ha ...

  3. jsp传给java属性,java生成json串,方便以后取出来

    前台代码 $.ajax({ url : '<%=basePath%>userorderother/canUpdateCust.do', type : 'POST', data: {'kdc ...

  4. 在JAVA中使用JSONObject生成json

    JSON是一种轻量级的数据交换格式,在现在的web开发中,是非常常见的.在没有方便的工具之前,我们或许会使用拼字符串的形式来生成json数组,今天我们使用一个json-lib.jar包来为我们实现生成 ...

  5. java对象转json应clone,避免生成json串有问题

    今天因为一个java对象转json,搞了我一下午,在些记录一下: 是这样:我在strtuts2的action中调用services返回 Row: 26, 中国银行海鹰, 29, 东楼, 36, 1F ...

  6. Java Servlet生成JSON格式数据并用jQuery显示

    1.Servlet通过json-lib生成JSON格式的数据 import java.io.IOException;import java.io.PrintWriter;import java.uti ...

  7. JAVA生成并导出json文件

    将一个list集合转换成json文件并导出: 数据集合: List<Object> agencyList = new ArrayList<Object>(); Map<S ...

  8. 生成JSON数据--Gson(谷歌)方法

    Gson生成JSON数据方法: 创建相应的类,然后创建对象,toJson()进去就可以了 要求:生成如下JSON数据 1.{"age":4,"name":&qu ...

  9. Java之JSON数据

    特别注意:使用JSON前需要导包 操作步骤地址:http://blog.csdn.net/baidu_37107022/article/details/70876993 1.定义 JSON(JavaS ...

随机推荐

  1. HDU - 5017 Ellipsoid(模拟退火法)

    Problem Description Given a 3-dimension ellipsoid(椭球面) your task is to find the minimal distance bet ...

  2. linux设备号分配

    参考:http://blog.chinaunix.net/uid-24460251-id-2606762.htmlhttp://blog.csdn.net/zjjyliuweijie/article/ ...

  3. Gold Balanced Lineup - poj 3274 (hash)

    这题,看到别人的解题报告做出来的,分析: 大概意思就是: 数组sum[i][j]表示从第1到第i头cow属性j的出现次数. 所以题目要求等价为: 求满足 sum[i][0]-sum[j][0]=sum ...

  4. 【Python + ATX基于uiaotumator2】之Android—APP自动化简易例子

    上代码: import uiautomator2 as u2 from time import sleep d = u2.connect_usb('608ad0fe') #打开小卖 # d(text= ...

  5. IE6鼠标悬停Bug

    当鼠标放置于某个文字链接之上,文字或文字背景改变为其他颜色或样式的效果是我们最经常见到的鼠标悬停效果.在CSS中,这个效果靠伪元素:hover来实现,只不过在文字链接中:hover被应用在了锚点元素& ...

  6. UIImagePickerController关于图片裁剪

    - (UIImage*)scaleImage:(UIImage*)anImage withEditingInfo:(NSDictionary*)editInfo{ UIImage *newImage; ...

  7. [PHP开发必备] 走在大牛的路上 phpstudy最全的开发环境搭建

    今天给大家分享我最喜欢的一个工具,也是咱php开发攻城狮亦或程序猿必备的开发神器 -- phpstudy最全的开发环境搭建 这也是我的好朋友,日复一日不断更新的成果,大家有钱的捧个钱场,没钱的捧个人场 ...

  8. Gmail 邮件配置备忘

    1.smtp端口号不是默认的25,smtp的是587 2.必须设置“允许使用不够安全的应用” 其他的按照网上文档设置就好了

  9. Unity3D学习笔记——NGUI之UIPopupList

    UIPopupList:将这个组件添加到Button上,即可构建一个下拉列表. 效果图如下: 一:使用步骤 1.首先创建一个Sprite作为button. 2.创建一个label,用于显示当前选择的选 ...

  10. poj 1470(LCA)

    题目链接:http://poj.org/problem?id=1470 思路:题目的意思很简单,就是求树中每个节点作为某两个节点的最近公共祖先的次数,这里我们可以用sum数组来保存,然后就是从根节点开 ...