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. linux下使用Stunnel配置与使用方式一例

    第一部分:stunnel的安装与配置 注:在ubuntu下,stunnel的安装很简单快捷. 在synaptic(安立得工具系统下可以直接选举安装) 在服务器环境下,直接使用apt-get insta ...

  2. erlang 洗牌 shuffle

    很简单的一个场景:一副扑克(54张)的乱序洗牌 shuffle_list(List) -> [X || {_, X} <- lists:sort([{random:uniform(), N ...

  3. 一个基于 EasyUI 的前台架构(3)封装操作Tabs的JS代码

    一般来说,系统框架的主内容区会引入另一个独立的 Web 页面来实现系统的功能,所以在在 Tabs 里的每一个标签页里使用 iframe 标签来引入子页面.所以这里可以将 Tabs 的 Content ...

  4. 【转】如何彻底删除SVN中的文件和文件夹(附恢复方法)

    这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的b ...

  5. CSS3之body背景图平铺

    你再也不需要因为屏幕大小不同而去选择多张图片作为背景图了,css3教你做人: body { background: url('xx.jpg')top center no-repeat; backgro ...

  6. 嵌入式开发之davinci--- 8148/8168/8127 中swms、Mosaic’s、display 显示pal 模式

    (1) (2) (3) (4) -------------------------author:pkf ------------------------------time:2-3 --------- ...

  7. (转)初步认识拓展UnityEditor编辑器定制

    初步认识拓展UnityEditor编辑器定制 热度 9529 2015-9-4 18:50 |个人分类:Unity3d| 编辑器, 拓展 我相信无数初学者看别人游戏都经常看到他们的Inspector中 ...

  8. java.lang.IllegalArgumentException: Invalid 'log4jConfigLocation 解决办法

    MyEclipse 启动tomcat 报错: java.lang.IllegalArgumentException: Invalid 'log4jConfigLocation' parameter: ...

  9. 循环遍历完成后再进行else判断

    有时需要在循环遍历完后再进行else操作,通常的办法是在循环前设置一个flag,用于判断.具体例子如下:

  10. Core Services层

    本文转载至 http://jingyan.baidu.com/article/cdddd41c57360853cb00e124.html Core Services层是系统很多部分的基础部分,也许应用 ...