当前位置:文档之家› java方式的将java对象以及list或者map转化为json数据

java方式的将java对象以及list或者map转化为json数据

java方式的将java对象以及list或者map转化为json数据
java方式的将java对象以及list或者map转化为json数据

java方式的将java对象以及list或者map转化为json数据https://www.doczj.com/doc/168535740.html,

学会了在j2ee中使用ajax后,有时候从服务器返回客户端的数据是对象,自己手动拼凑json字符串容易出错,通过谷歌知道了json-lib这个类库,方便的支持java中对象到json 字符串的转化。

看source-forge的json-lib介绍说,需要

jakarta commons-lang 2.4

jakarta commons-beanutils 1.7.0

jakarta commons-collections 3.2

jakarta commons-logging 1.1.1

ezmorph 1.0.6

这些jar包的支持,下载下来试了一把,挺好用的,写出来,与大家分享。

代码如下:

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

public class Test {

public static void main(String[] args) {

//当是对象的时候

Student student = new Student();

student.setAge(18);

student.setName("zhangsan");

student.setSex("male");

JSONObject jsonObject = JSONObject.fromObject(student);

System.out.println(jsonObject);//输出{"age":18,"name":"zhangsan","sex":"male"}

//当是数组或list的时候

Student[] stus = new Student[5];

List stuList = new ArrayList();

for (int i = 0; i < stus.length; i++) {

stus[i] = new Student();

stus[i].setAge(i*10+8);

stus[i].setName("zhang"+i);

stus[i].setSex("male");

//添加到list,一会儿用

stuList.add(stus[i]);

}

JSONArray jsonArray = JSONArray.fromObject(stus);

System.out.println(jsonArray);//和下面打印的结果相同

//结果:[{"age":8,"name":"zhang0","sex":"male"},{"age":18,"name":"zhang1","sex":"male"},{"a ge":28,"name":"zhang2","sex":"male"},{"age":38,"name":"zhang3","sex":"male"},{"ag e":48,"name":"zhang4","sex":"male"}]

JSONArray jsonArrayFromList = JSONArray.fromObject(stuList);

System.out.println(jsonArrayFromList);//和上面打印的结果相同

//当既有对象又有数组的时候

Map map = new HashMap();

Teacher teacher = new Teacher();

teacher.setAge(30);

teacher.setName("laoshi");

teacher.setSex("male");

map.put("teacher", teacher);

map.put("student", stuList);

JSONObject jsonObjectFromMap = JSONObject.fromObject(map);

System.out.println(jsonObjectFromMap);

//结果:

//{"student":[{"age":8,"name":"zhang0","sex":"male"},{"age":18,"name":"zhang1","se x":"male"},{"age":28,"name":"zhang2","sex":"male"},{"age":38,"name":"zhang3","sex" :"male"},{"age":48,"name":"zhang4","sex":"male"}],"teacher":{"age":30,"name":"laosh i","sex":"male"}}

}

}

【IT专家】在JAVA中封装JSONUtils工具类及使用 (转)

本文由我司收集整编,推荐下载,如有疑问,请与我司联系 在JAVA 中封装JSONUtils 工具类及使用(转) HashMap String, Object data = new HashMap String, Object (); JSONObject jsonObject = JSONUtils.toJSONObject(object); Iterator it = jsonObject.keys(); while (it.hasNext()) String key = String.valueOf(it.next()); Object value = jsonObject.get(key); data.put(key, value); return data; /*** * 将对象转换为List * @param object * @return // 返回非实体类型(Map)的List public static List Map String, Object toList(Object object) List Map String, Object list = new ArrayList Map String, Object (); JSONArray jsonArray = JSONArray.fromObject(object); for (Object obj : jsonArray) JSONObject jsonObject = (JSONObject) obj; Map String, Object map = new HashMap String, Object (); Iterator it = jsonObject.keys(); while (it.hasNext()) String key = (String) it.next(); Object value = jsonObject.get(key); map.put((String) key, value); list.add(map); return list; /*** * 将JSON 对象数组转换为传入类型的List * @param * @param jsonArray * @param objectClass * @return public static T List T toList(JSONArray jsonArray, Class T objectClass) return JSONArray.toList(jsonArray, objectClass); /*** * 将对象转换为传 入类型的List * @param * @param jsonArray * @param objectClass * @return public static T List T toList(Object object, Class T objectClass) JSONArray jsonArray = JSONArray.fromObject(object); return JSONArray.toList(jsonArray, objectClass); /*** * 将JSON 对象转换为传入类型的对象* @param * @param jsonObject * @param beanClass * @return public static T T toBean(JSONObject jsonObject, Class T beanClass) return (T) JSONObject.toBean(jsonObject, beanClass); /*** * 将将对象转换为传入类型 的对象* @param * @param object * @param beanClass * @return public static T T toBean(Object object, Class T beanClass) JSONObject jsonObject = JSONObject.fromObject(object); return (T) JSONObject.toBean(jsonObject, beanClass); /*** * 将JSON 文本反序列化为主从关系的实体* @param 泛型T 代表主实体类型 * @param 泛型D 代表从实体类型* @param jsonString JSON 文本* @param mainClass 主实体类型* @param detailName 从实体类在主实体类中的属性名称*

Java中json使用方法

Java中json使用方法 摘要:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python 等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(网络传输速率)。一、准备工作 json是个非常重要的数据结构,在web开发中应用十分广泛。我觉得每个人都应该好好的去研究一下json的底层实现,分析一下json的相关内容,希望大家能有所收获。首先给大家说一下使用json前的准备工作,需要准备下面的六个jar 包: 需要说明几点: (1)json-lib最新版本可以从这个地方下载:https://www.doczj.com/doc/168535740.html,/projects/json-lib/files/json-lib/ (2)ezmorph是一个简单的java类库,用于将一种bean转换成另外一种bean。其动态bean的实现依赖于commons-beanutils包。ezmorph可以在这个地方下载源码:https://www.doczj.com/doc/168535740.html,/projects/ezmorph/files/ezmorph/ (3)commons-beanutils是操作Java Bean的类库,依赖于commons-collections。可以从这里下载:https://www.doczj.com/doc/168535740.html,/proper/commons-beanutils/download_beanutils.cgi (4)commons-collections类库是各种集合类和集合工具类的封装。可以从这里下载: https://www.doczj.com/doc/168535740.html,/proper/commons-collections/download_collections.cgi 二、语法相关 JSON 语法规则 JSON 语法是JavaScript 对象表示法语法的子集。 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组

java实现Post JSON请求

java实现Post JSON请求具体代码如下: package com.sunkey.httpTest; import java.io.DataOutputStream; import java.io.InputStream; import https://www.doczj.com/doc/168535740.html,.URL; import https://www.doczj.com/doc/168535740.html,.URLConnection; import https://www.doczj.com/doc/168535740.html,mons.io.IOUtils; public class HttpPostJson { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String URL = "http://localhost:18090"; String Json = findXmlInfo(); Json = "{\"姓名\" : \"大憨\",\"年龄\" : 24}"; String postResult = doHttpPost(Json,URL); System.out.println("postResult:"+postResult); } private static String findXmlInfo() { // TODO Auto-generated method stub return null; } public static String doHttpPost(String xmlInfo,String URL){ System.out.println("发起的数据:"+xmlInfo); byte[] xmlData = xmlInfo.getBytes(); InputStream instr = null; java.io.ByteArrayOutputStream out = null; try{ URL url = new URL(URL); URLConnection urlCon = url.openConnection(); urlCon.setDoOutput(true);

java对象与json对象的转换

转:JSON与JAVA数据的转换 JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bea n和DynaBean。 下载地址:https://www.doczj.com/doc/168535740.html,/ 还要需要的第3方包: https://www.doczj.com/doc/168535740.html,mons(3.2以上版本) org.apache.oro net.sf.ezmorph(ezmorph-1.0.4.jar) nu.xom 1、List Java代码 1.boolean[] boolArray = newboolean[]{true,false,true}; 2.JSONArray jsonArray1 = JSONArray.fromObject( boolArray ); 3.System.out.println( jsonArray1 ); 4.// prints [true,false,true] 5. 6.List list = new ArrayList(); 7.list.add( "first"); 8.list.add( "second"); 9.JSONArray jsonArray2 = JSONArray.fromObject( list ); 10.System.out.println( jsonArray2 ); 11.// prints ["first","second"] 12. 13.JSONArray jsonArray3 = JSONArray.fromObject( "['json','is','easy']"); 14.System.out.println( jsonArray3 );

2008-08-05Excel版中国数据地图工具

2008-08-05Excel版中国数据地图工具2008-08-05Excel版中国数据地图工具 标签: excel图表数据地图中国地图分类: Excel | 图表 2008-08-05 12:51 Excel版中国数据地图工具 (文 / ExcelPro的图表博客) 前面整理过一篇《运用直观的数据地图》的日志,不少朋友咨询如何制作,由于excel的地图模块已剥离单独售卖,在网上搜索数据地图的制作工具,基本没有相关的东西。有一个国产数据地图控件,居然叫价800元,看来是想钱想疯了。于是决定自己动手做个小工具,按数据大小分档层析填色,完成数据地图制作,也就有了这篇日志。

运用这个工具,你只需要简单的三步,就可以做出一个如咨询顾问常用的、专业的数据地图。 1、输入你的数据; 2、设置数据分档阀值、颜色图例; 3、点击按钮生成地图。 是不是非常简单,经常做全国数据分析的朋友一定会非常喜欢。 这个小工具是一个常规的excel文件,包含一小段简单的宏。文件已经预设了4套从浅到深的颜色模板,复制粘贴到对应位置即可使用。当然你可以自定义自己想要的颜色及其深浅,可参见《杂志级图表的第一步:突破Excel的默认颜色》。 文件并未加密,依据这个文件及其思路,只要简单修改,你就可以方便的改造为所在省份分地市、所在城市分市区的数据地图。 做这个工具时碰到的问题是,正确的矢量中国地图还真不好找,有的没有台湾,有的新疆和西藏中间缺一块(克什米尔,),几乎都没有重庆,到处是陷阱啊,为了主权领土,要仔细检查。 为感谢本博的各位客人和朋友,ExcelPro的图表博客愿将此工具文件免费送给需要的朋友。由于sohu博客不能上传附件,你只要发送邮件到我博客首页的邮

java方式的将java对象以及list或者map转化为json数据

java方式的将java对象以及list或者map转化为json数据https://www.doczj.com/doc/168535740.html, 学会了在j2ee中使用ajax后,有时候从服务器返回客户端的数据是对象,自己手动拼凑json字符串容易出错,通过谷歌知道了json-lib这个类库,方便的支持java中对象到json 字符串的转化。 看source-forge的json-lib介绍说,需要 jakarta commons-lang 2.4 jakarta commons-beanutils 1.7.0 jakarta commons-collections 3.2 jakarta commons-logging 1.1.1 ezmorph 1.0.6 这些jar包的支持,下载下来试了一把,挺好用的,写出来,与大家分享。 代码如下: import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) { //当是对象的时候 Student student = new Student(); student.setAge(18); student.setName("zhangsan"); student.setSex("male"); JSONObject jsonObject = JSONObject.fromObject(student); System.out.println(jsonObject);//输出{"age":18,"name":"zhangsan","sex":"male"} //当是数组或list的时候 Student[] stus = new Student[5]; List stuList = new ArrayList(); for (int i = 0; i < stus.length; i++) {

Java学习笔记:JSONObject与JSONArray的使用

Java不像PHP解析和生产JSON总是一个比较痛苦的过程。但是使用JSONObject和JSONArray会让整个过程相对舒服一些。 需要依赖的包:commons-lang.jar commons-beanutils.jar commons-collections.jar commons-logging.jar ezmorph.jar json-lib-2.2.2-jdk15.jar 1. 创建一个JSONObject对象: package https://www.doczj.com/doc/168535740.html,.video.resource.controller.web; import java.util.ArrayList; import java.util.HashMap; import net.sf.json.JSONArray; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) { //JsonObject和JsonArray区别就是JsonObject是对象形式,JsonArray是数组形式 //创建JsonObject第一种方法 JSONObject jsonObject = new JSONObject(); jsonObject.put("UserName", "ZHULI"); jsonObject.put("age", "30"); jsonObject.put("workIn", "ALI"); System.out.println("jsonObject1:" + jsonObject); //创建JsonObject第二种方法 HashMap hashMap = new HashMap(); hashMap.put("UserName", "ZHULI"); hashMap.put("age", "30"); hashMap.put("workIn", "ALI"); System.out.println("jsonObject2:" + JSONObject.fromObject(hashMap)); //创建一个JsonArray方法1 JSONArray jsonArray = new JSONArray(); jsonArray.add(0, "ZHULI"); jsonArray.add(1, "30"); jsonArray.add(2, "ALI"); System.out.println("jsonArray1:" + jsonArray); //创建JsonArray方法2 ArrayList arrayList = new ArrayList();

Android中JSON详细总结

Android中JSON详细总结 1、JSON(JavaScript Object Notation) 定义: 一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。业内主流技术为其 提供了完整的解决方案(有点类似于正则表达式,获得了当今大部分语言的支持),从而可以在不同平台间进行数据交换。JSON采用兼容性很高的文本格式,同时也具备类似于C语言体系的行为。– https://www.doczj.com/doc/168535740.html, 2、JSON的结构: (1) Name/Value Pairs(无序的):类似所熟知的Keyed list、 Hash table、Disctionary和Associative array。在Android平台中同时存在另外一个类 "Bundle",某种程度上具有相似的行为。 (2) Array(有序的):一组有序的数据列表。 对象 对象是一个无序的Name/Value Pairs集合。{name:value , name:value , name:value .... } 例子:{ "name":"小猪","age":20 } Array Array是值(value)的有序集合。[ value , value , value ...... ] 值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。 字符串(string)是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义。一个字符(character)即一个单独的字符串(character string)。例如:\ + " \ / b f n r t u 进行转义。

JSONObject简介

JSONObject简介 本节摘要:之前对JSON做了一次简单的介绍,并把JSON和XML做了一个简单的比较;那么,我就在想,如果是一个json格式的字符串传到后台,需要怎么对其处理?如果前台页面需要后台返回的是一个json的字符串,那么后台是怎么把json格式的字符串给拼装起来的呢?JSON和XML是不是有某种联系,他们之间是不是可以互相转换?……带着这些问题,搜索了相关的资料,并自己实际动手操作,总算对这些问题有了个比较清晰的认识。这些问题主要是通过JSONObject这个插件的jar包实现。 preparation 1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包。 2.下载jar包 https://www.doczj.com/doc/168535740.html,/java-pan/lib.rar 提供了除JSONObject的jar之外依赖的其他6个jar包,一共7个jar文件 说明:因为工作中项目用到的版本是1.1的对应jdk1.3的版本,故本篇博客是基于1.1版本介绍的。 对应此版本的javadoc下载路径如下: https://www.doczj.com/doc/168535740.html,/projects/json-lib/files/json-lib/json-lib-1.1/ 目前最新的版本为2.4,其他版本下载地址为 https://www.doczj.com/doc/168535740.html,/projects/json-lib/files/json-lib/ 3.项目环境: system:WIN7 myeclipse:6.5 tomcat:5.0 JDK:开发环境和编译用的都是1.5 项目结构如下: 说明:本次用到的的文件只有工程目录json包下的JSONObject_1_3类和note.txt

JSON与JAVA数据的相互转换

一、将任意的javaBean对象转换为json字符串: Object obj=XXX;//任意一个javabean的对象都可以,但是这个javaBean必须是公开的,否则会报找不到get方法。 JSONObject jo=JSONObject.fromObject(obj); System.out.println(jo.toString()); 如果你的obj知道具体类型的话,还[可以使用JSONArray等对象来转换。其方法也类似。 二、将json字符串转换为javaBean对象: String str="json字符串对象"; JSONObject jo=JSONObject.fromObject(obj); T t=(T)JSONObject.toBean(jo,T.class); XXXX 实例: 简单的测试代码: import java.util.List; import net.sf.json.JSONObject; public class Test { public static void main(String[] args) throws Exception { JSONObject jo = JSONObject.fromObject(new T()); String str = (jo.toString()); System.out.println(str); JSONObject jo2 = JSONObject.fromObject(str); T t = (T) JSONObject.toBean(jo2, T.class); List lists2 = (t.getTest2()); for (Object t2 : lists2) {//这里的Object如果直接写成T2的话,会出错的,原因是JSON 转换后的lists2对象因为它不知道类型,就解析成JSON里的某种格式了,我们需要再调用相同的方法将其转成我们所知的JavaBean System.out.println(((T3) JSONObject.toBean(JSONObject.fromObject(t2), T3.class)).getAaa()); } List l3 = t.getListString(); for (String s : l3) { System.out.println(s);

【个人总结系列-24】JSON学习总结及CJson代码分析

JSON学子总结及CJson代码分析 “JSON”的全称是“JavaScript Object Notation”,即JavaScript对象符号,是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。JSON 采用与编程语言无关的文本格式,但是也使用了类C语言(包括C、C++、C#、Java、JavaScript、Python等)的习惯,这些特性使JSON成为理想的数据交换格式。 JSON建构于两种结构: (1)“名称/值”对的集合。不同的语言中,其被理解为对象(“object”)、纪录(“record”)、结构(“struct”)、字典(“dictionary”)、哈希表(“hash table”)、有键列表(“keyed list”)或者关联数组(“associative array”)。 (2)值的有序列表。在大部分语言中,其被理解为数组(“array”)。 简单理解,JSON的定义由以下四句话就全部定义了。 ●并列的数据之间用逗号(”,”)分隔。 ●映射用冒号(”:”)表示。 ●并列数据的集合(数组)用方括号("[]")表示。 ●映射的集合(对象)用大括号(”{}”)表示。 对JSON的解析 主要学习了通过一个简短的开源的C语言代码cJson对JSON格式数据进行解析。cJson的代码很简短,全部只有20KB左右,主要包含了解析、构造、编辑JSON 数据,这些功能主要通过其自定义的cJSON数据结构。cJSON数据结构对JSON 格式数据进行了描述,并通过程序提供了许多操作,cJSON数据结构定义如下所示:

Json对象的类型 以下通过下面的JSON格式数据为例分析cJson中的基本函数,数据在C语言中表示如下: char* value = "[{\"name\":\"鸟巢\",\"point\":{\"lat\":\"39.990\",\"lng\":\"116.397\"},\"desc\":\"奥运会主场地\"},{\"name\":\"北大乒乓球馆\",\"point\":{\"lat\":\"39.988\",\"lng\":\"116.315\"},\"desc\":\"乒乓球比赛场地\"},{\"name\":\"北京工人体育场\",\"point\":{\"lat\":\"39.930\",\"lng\":\"116.446\"},\"desc\":\"足球比赛场地\"}]"

json数据解析

这个方法是参考 https://www.doczj.com/doc/168535740.html,/networking-database-problems-f29/connecting-to-mysql-database-t50063.html 国外老外的一些经验所得。这里我总结一下要点: 1、需要一个mysql数据库,这个怎么搞出来,大家觉得有问题先学学mysql再回来接着看。 2、需要一个php操作mysql数据库的脚本,上传到服务器地址 3、需要修改Android的manifest文件,入网许可!! 一、首先我们假如已经把MYSQL数据库建立好了,写一个PHP操作文件上传到服务器访问地址 [php]view plaincopyprint? 1 稍微解析一下上面PHP内容, [php]view plaincopyprint? 10$q=mysql_query("SELECT * FROM user_info WHERE uName ='".$_REQUEST['name']."'"); 这句当中 [php]view plaincopyprint? 11.$_REQUEST['name']. 就表示要从android里面输入到这里的一个键值对的值,id为name,下面我们 写Android程序会再说明一下。 [php]view plaincopyprint?

java生成xml报文及转成json

package test.xml; import java.io.StringReader; import java.io.StringWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import java.util.Set; import org.dom4j.Document; import org.dom4j.io.OutputFormat; import org.dom4j.io.SAXReader; import org.dom4j.io.XMLWriter; import net.sf.json.JSON; import net.sf.json.xml.XMLSerializer; public class XmlTest { private final static String XML_DECLARATION = "

encoding=\"utf-8\"?>"; public static String callMapToXML(Map map) { String resultStr = ""; StringBuffersb = new StringBuffer(); sb.append(XML_DECLARATION); mapToXMLTest2(map, sb); //格式化输出 resultStr = formatXML(sb.toString()); return resultStr; } private static void mapToXMLTest2(Map map, StringBuffersb) { Set set = map.keySet(); for (Iterator it = set.iterator(); it.hasNext();) { String key = (String) it.next(); Object value = map.get(key); if (null == value) value = ""; if (value.getClass().getName().equals("java.util.ArrayList")) { ArrayList list = (ArrayList) map.get(key); sb.append("<" + key + ">");

java封装(拼接)json 对象

今天在项目中需要用到使用java代码,拼成json的list对象,小研究一下,写出来分享给大家: 方法一: if (CollectionUtil.isNotEmpty(userModelList)) { List list = new ArrayList(); Map o = new HashMap(); for (UserModel userModel : userModelList) { Map map =new HashMap(); map.put("id",userModel.getUser_id_site()); map.put("name",userModel.getUser_nike_name()); map.put("image",userModel.getUser_image_big()); JSONObject jsonobj = JSONObject.fromObject(map); list.add(jsonobj); } Map oo = new HashMap(); oo.put("users",list.toArray()); Map status = new HashMap(); oo.put("status","ok");

JSONObject jsonobj = JSONObject.fromObject(oo); jsonobj.putAll(status); o.put("jsonp", jsonobj); System.out.println(o.toString()); return o.toString(); } //////////结果类似这样: {jsonp={"users":[{"id":"1","name":"客服NO1","image":null},{"id":"asfdafasd","name":"sdaf","image":"sadfas "},{"id":"asfdafasd","name":"sdaf","image":"sadfas"}],"status":"ok"} } 你也可以继续嵌套构造多级 方法2 直接使用string拼接 先new一个list,下边是部分代码

中国数据地图生成模板

竭诚为您提供优质文档/双击可除中国数据地图生成模板 篇一:平台框架数据电子地图配图方案 福建省交通地理信息公共服务平台(一期) 框架数据电子地图配图方案 (20xx) 福建省交通信息通信中心广州城市信息研究所有限公司 二○一○年十一月 目录 1范围................................................. ................................................... ......................12参考资料................................................. ................................................... ..............13建设目标和内容................................................. ...................................................

..14技术要点................................................. ................................................... ..............24.1数据叠加................................................. ................................................... . (2) 4.1.1图层叠加................................................. ................................................... ..................24.1.2道路中心线的叠加和融合................................................. (3) 4.2兴趣点抽稀................................................. ................................................... ...44.3金字塔规则................................................. ................................................... ...44.4字体和线状图层的平滑................................................. . (5)

java递归无级树输出json格式

java递归无级树输出json格式 由于项目需要将数据库中的一个层级表转换成json格式输出,在网上找了很久都没有找开合适的内容,要不是代码太复杂,就是不符合需求,所以就自己用递归写了一个无级树的代码。代码很简单就两个类一个TreeNode.java 和一个测试类Test.java(可直接运行) 在运行之前需要以下公共类: commons-beanutils.jar commons-collections.jar commons-lang.jar commons-logging.jar ezmorph-1.0.6.jar json-lib-2.3-jdk15.jar 直接贴代码:TreeNode.java package com.test; import java.util.ArrayList; public class TreeNode { private String id; private String pid; private String name; private String remark; private ArrayList children = new ArrayList(); public TreeNode(String id, String pid, String name, String remark) { this.id = id; this.pid = pid; https://www.doczj.com/doc/168535740.html, = name; this.remark = remark; } public void add(TreeNode node) {//递归添加节点 if ("0".equals(node.pid)) { this.children.add(node); } else if (node.pid.equals(this.id)) { this.children.add(node); } else { for (TreeNode tmp_node : children) { tmp_node.add(node); } } } public String getId() { return id; } public void setId(String id) { this.id = id; }

java生成json对象总结

Json必备包 commons-beanutils-1.7.0.jar不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: org/apache/commons/beanutils/DynaBean commons-collections-3.2.jar 不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap commons-lang-2.3.jar不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException commons-logging-1.0.4.jar不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: org/apache/commons/logging/LogFactory ezmorph-1.0.6.jar不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: net/sf/ezmorph/Morpher (本人亲测,没有这个包,myeclipse不抛异常,跟踪执行到JSONObjectjsonObj = JSONObject.fromObject(jsonMap);这段代码就中断了,其以后的代码也不执行了,确实没有像网上说的不抛异常) json-lib-2.1-jdk15.jar不加这个包 https://www.doczj.com/doc/168535740.html,ng.NoClassDefFoundError: net/sf/json/JSONObject Java中转换为Json对象的例子 import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import net.sf.json.JSONArray; import net.sf.json.JSONObject; publicclass JsonUtil { publicvoid listToJson() { ListjsonList = new ArrayList(); jsonList.add("nihao"); jsonList.add("hello"); jsonList.add("haha"); jsonList.add("heihei"); JSONArrayjsonArray = JSONArray.fromObject(jsonList);

气泡型中国数据地图

气泡型中国数据地图 (文/ EP图表博客) [source] DSA最近介绍了如上图所示的《商业周刊》的一个气泡地图,这里。据说最近这种图表非常流行。 DSA认为这个图的优点是可以快速发现数值较大的区域,但缺点是难于区分那些数值较小的区域。PTS则认为这个图同热力型地图一样,并不能有效的反映数据和便于比较,他还是认为用排序的柱图或条形更好,看他的方案。 我觉得,地图的长处是可以提供地理信息,使人迅速就将数值与地理位置对应起来,这是图表的增加值,是值得运用的。并且在中国现在的环境,使用地图也显得比较“高级”,能唬人。气泡地图的应用要视数据情况而定,在各省数据差异比较悬殊时,且相邻区域的气泡没有太多交叉时,是比较好的选择。如果数值大小都差不多,气泡没有什么区别,就不是很好。 气泡地图的优缺点大家可以继续讨论,下面给出我的做法,也是个小工具分享,大家可以据此仿制分省的地图。

思路:做一个气泡图,地图用一个图片填充在绘图区,x、y序列定位各省气泡定的位置,第3个序列为数值。 x、y序列的值如何确定,从而实现各省位置的定位?2003有个优点,对做好的图,拽住某个数据点,可以拖动其位置,这时源数据会跟随变动。所以x、y值先不必太准确,可根据地图图片的位置拽动数据点慢慢调整。 数值的大小可设置用气泡的面积表示,也可设置为用气泡的宽度表示。气泡可用半透明的圆形填充。 20090409更新:有朋友问如何确定xy值,及如何拽数据点。 假设你有10个地区,先将(x,y)填成(1,1)、(2,2)...(10,10),第3列为指标值, 1、做气泡图后,气泡呈斜线状。 2、填充地图图片到绘图区。 3、选中数据序列,再选中第一个地区的数据点,拽到地图上对应的地方。其他地区同样处理。 例子文件下载:气泡型中国数据地图。 (本文由ExcelPro的图表博客原创,转载请注明出处。EP图表博客探讨专业有效的商务图表沟通之道,欢迎交流讨论!) (从网上抄的一段文字,如果您赞同,可以照此办理:) 『小建议』如果你在Email里看到这篇文章,可以转发给你的朋友;如果你在Google Reader阅读器里看到这篇文章,可以共享给好友;如果你在豆瓣里看到这篇文章,不妨推荐给更多人;或者干脆Copy下这篇文章的链接,发给你MSN上最喜欢的人;我们永远相信,分享是一种美德,Great People Share Knowledge...

文本预览
相关文档 最新文档