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. 内核交互--sysfs

    文档介绍:http://lxr.linux.no/linux+v2.6.37/Documentation/filesystems/sysfs.txt The sysfs Filesystem Sysf ...

  2. memcached 经常使用命令最全总结大全

    1.首先.总结一下memcached的一些基本设置 -p 监听的port -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached ...

  3. Easyui 基于kindeditor的扩展

    源码 /** * Author : ____′↘夏悸 * Easyui KindEditor的简单扩展. * 有了这个之后,你就可以像使用Easyui组件的方式使用KindEditor了 * 前提是你 ...

  4. 我的第7个java程序--把java web项目改为java project项目--mybatis

    连接数据库需要 程序,连接字符串,查询语句 主程序->读取连接字符串->读取查询语句->把查询到的值赋值给映射对象->打印对象属性 java project的好处,不用做那么多 ...

  5. Marple表演电影字幕

    119501:15:59,702 --> 01:16:02,782我的幸运死了 而我很清楚是谁杀了她的 (格雷格)My Lucky is dead, and I know perfectly w ...

  6. poj 1548(最小路径覆盖)

    题目链接:http://poj.org/problem?id=1548 思路:最小路径覆盖是很容易想到的(本题就是求最小的路径条数覆盖所有的点),关键是如何建图,其实也不难想到,对于当前点,如果后面的 ...

  7. ubuntu在vmware下使用问题

    问题1: 在vmware虚拟机下安装的ubuntu系统,为了在windows和ubuntu之间拷贝数据方便,所以在vmware上安装了vmware tools.在安装了vmware tool之后会在u ...

  8. 1249 Problem Q

    问题 Q: 比大小 时间限制: 1 Sec  内存限制: 128 MB 提交: 159  解决: 66 [提交][状态][讨论版] 题目描述 给你两个很大的数,你能不能判断出他们两个数的大小呢? 比如 ...

  9. 32位Win7下安装与配置PHP环境(一)

    运行PHP网站,主要需要安装.配置三个软件,Apache.PHP和MySQL.如果需要编辑调试PHP程序,还要安装一个编辑调试软件. 一. Apache Apache是和IIS类似的一个软件,是运行在 ...

  10. HDU3037 附Lucas简单整理

    Saving Beans Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...