package comm;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import net.sf.ezmorph.MorpherRegistry;
import net.sf.ezmorph.object.DateMorpher;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
import net.sf.json.util.JSONUtils;
import net.sf.json.xml.XMLSerializer;
public class JsonUtil {
static { MorpherRegistry mr = JSONUtils.getMorpherRegistry(); DateMorpher dm =
new DateMorpher(
new String[] { Util.YYYY_MM_DD, Util.YYYY_MM_DD_HH_MM_ss, Util.HH_MM_ss, Util.YYYYMMDD, Util.YYYYMMDDHHMMSS, Util.HHMMss }); mr.registerMorpher(dm); }
public static Object getDtoFromJsonObjStr(String jsonObjStr, Class clazz) {
return JSONObject.toBean(JSONObject.fromObject(jsonObjStr), clazz); }
public static Object getDtoFromJsonObjStr(String jsonObjStr, Class clazz, Map classMap) {
return JSONObject.toBean(JSONObject.fromObject(jsonObjStr), clazz, classMap); }
public static Object[] getArrFromJsonArrStr(String jsonArrStr) {
return JSONArray.fromObject(jsonArrStr).toArray(); }
public static Object[] getDtoArrFromJsonArrStr(String jsonArrStr, Class clazz) { JSONArray jsonArr = JSONArray.fromObject(jsonArrStr); Object[] objArr =
new Object[jsonArr.size()];
for (
int i =
0; i < jsonArr.size(); i++) { objArr[i] = JSONObject.toBean(jsonArr.getJSONObject(i), clazz); }
return objArr; }
public static Object[] getDtoArrFromJsonArrStr(String jsonArrStr, Class clazz, Map classMap) { JSONArray array = JSONArray.fromObject(jsonArrStr); Object[] obj =
new Object[array.size()];
for (
int i =
0; i < array.size(); i++) { JSONObject jsonObject = array.getJSONObject(i); obj[i] = JSONObject.toBean(jsonObject, clazz, classMap); }
return obj; }
public static List getListFromJsonArrStr(String jsonArrStr) { JSONArray jsonArr = JSONArray.fromObject(jsonArrStr); List list =
new ArrayList();
for (
int i =
0; i < jsonArr.size(); i++) { list.add(jsonArr.get(i)); }
return list; }
public static List getListFromJsonArrStr(String jsonArrStr, Class clazz) { JSONArray jsonArr = JSONArray.fromObject(jsonArrStr); List list =
new ArrayList();
for (
int i =
0; i < jsonArr.size(); i++) { list.add(JSONObject.toBean(jsonArr.getJSONObject(i), clazz)); }
return list; }
public static List getListFromJsonArrStr(String jsonArrStr, Class clazz, Map classMap) { JSONArray jsonArr = JSONArray.fromObject(jsonArrStr); List list =
new ArrayList();
for (
int i =
0; i < jsonArr.size(); i++) { list.add(JSONObject.toBean(jsonArr.getJSONObject(i), clazz, classMap)); }
return list; }
public static Map getMapFromJsonObjStr(String jsonObjStr) { JSONObject jsonObject = JSONObject.fromObject(jsonObjStr); Map map =
new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) { String key = (String) iter.next(); map.put(key, jsonObject.get(key)); }
return map; }
public static Map getMapFromJsonObjStr(String jsonObjStr, Class clazz) { JSONObject jsonObject = JSONObject.fromObject(jsonObjStr); Map map =
new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) { String key = (String) iter.next(); map.put(key, JSONObject.toBean(jsonObject.getJSONObject(key), clazz)); }
return map; }
public static Map getMapFromJsonObjStr(String jsonObjStr, Class clazz, Map classMap) { JSONObject jsonObject = JSONObject.fromObject(jsonObjStr); Map map =
new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) { String key = (String) iter.next(); map.put(key, JSONObject .toBean(jsonObject.getJSONObject(key), clazz, classMap)); }
return map; }
public static String getJsonStr(Object obj) { String jsonStr =
null; JsonConfig jsonCfg =
new JsonConfig(); jsonCfg.registerJsonValueProcessor(java.util.Date.
class,
new JsonDateValueProcessor(Util.YYYY_MM_DD_HH_MM_ss));
if (obj ==
null) {
return "{}"; }
if (obj
instanceof Collection || obj
instanceof Object[]) { jsonStr = JSONArray.fromObject(obj, jsonCfg).toString(); }
else { jsonStr = JSONObject.fromObject(obj, jsonCfg).toString(); }
return jsonStr; }
public static String getXMLFromObj(Object obj) { XMLSerializer xmlSerial =
new XMLSerializer(); JsonConfig jsonCfg =
new JsonConfig(); jsonCfg.registerJsonValueProcessor(java.util.Date.
class,
new JsonDateValueProcessor(Util.YYYY_MM_DD_HH_MM_ss));
if ((String.
class.isInstance(obj) && String.valueOf(obj).startsWith(
"[")) || obj.getClass().isArray() || Collection.
class.isInstance(obj)) { JSONArray jsonArr = JSONArray.fromObject(obj, jsonCfg);
return xmlSerial.write(jsonArr); }
else { JSONObject jsonObj = JSONObject.fromObject(obj, jsonCfg);
return xmlSerial.write(jsonObj); } }
public static String getJsonStrFromXML(String xml) { XMLSerializer xmlSerial =
new XMLSerializer();
return String.valueOf(xmlSerial.read(xml)); } }
class JsonDateValueProcessor
implements JsonValueProcessor {
private String format = Util.YYYY_MM_DD_HH_MM_ss;
public JsonDateValueProcessor() { }
public JsonDateValueProcessor(String format) {
this.format = format; }
public Object processArrayValue(Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig); }
public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig); }
private Object process(Object value, JsonConfig jsonConfig) {
if (value
instanceof Date) { String str =
new SimpleDateFormat(format).format((Date) value);
return str; }
return value ==
null ?
null : value.toString(); }
public String getFormat() {
return format; }
public void setFormat(String format) {
this.format = format; } }
package comm;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import net.sf.ezmorph.MorpherRegistry;
import net.sf.ezmorph.object.DateMorpher;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.processors.JsonValueProcessor;
import net.sf.json.util.JSONUtils;
import net.sf.json.xml.XMLSerializer;
public class JsonUtil {
/**
* 设置日期转换格式
*/
static {
//注册器
MorpherRegistry mr = JSONUtils.getMorpherRegistry();
//可转换的日期格式,即Json串中可以出现以下格式的日期与时间
DateMorpher dm = new DateMorpher(new String[] { Util.YYYY_MM_DD,
Util.YYYY_MM_DD_HH_MM_ss, Util.HH_MM_ss, Util.YYYYMMDD,
Util.YYYYMMDDHHMMSS, Util.HHMMss });
mr.registerMorpher(dm);
}
/**
* 从json串转换成实体对象
* @param jsonObjStr e.g. {'name':'get','dateAttr':'2009-11-12'}
* @param clazz Person.class
* @return
*/
public static Object getDtoFromJsonObjStr(String jsonObjStr, Class clazz) {
return JSONObject.toBean(JSONObject.fromObject(jsonObjStr), clazz);
}
/**
* 从json串转换成实体对象,并且实体集合属性存有另外实体Bean
* @param jsonObjStr e.g. {'data':[{'name':'get'},{'name':'set'}]}
* @param clazz e.g. MyBean.class
* @param classMap e.g. classMap.put("data", Person.class)
* @return Object
*/
public static Object getDtoFromJsonObjStr(String jsonObjStr, Class clazz, Map classMap) {
return JSONObject.toBean(JSONObject.fromObject(jsonObjStr), clazz, classMap);
}
/**
* 把一个json数组串转换成普通数组
* @param jsonArrStr e.g. ['get',1,true,null]
* @return Object[]
*/
public static Object[] getArrFromJsonArrStr(String jsonArrStr) {
return JSONArray.fromObject(jsonArrStr).toArray();
}
/**
* 把一个json数组串转换成实体数组
* @param jsonArrStr e.g. [{'name':'get'},{'name':'set'}]
* @param clazz e.g. Person.class
* @return Object[]
*/
public static Object[] getDtoArrFromJsonArrStr(String jsonArrStr, Class clazz) {
JSONArray jsonArr = JSONArray.fromObject(jsonArrStr);
Object[] objArr = new Object[jsonArr.size()];
for (int i = 0; i < jsonArr.size(); i++) {
objArr[i] = JSONObject.toBean(jsonArr.getJSONObject(i), clazz);
}
return objArr;
}
/**
* 把一个json数组串转换成实体数组,且数组元素的属性含有另外实例Bean
* @param jsonArrStr e.g. [{'data':[{'name':'get'}]},{'data':[{'name':'set'}]}]
* @param clazz e.g. MyBean.class
* @param classMap e.g. classMap.put("data", Person.class)
* @return Object[]
*/
public static Object[] getDtoArrFromJsonArrStr(String jsonArrStr, Class clazz,
Map classMap) {
JSONArray array = JSONArray.fromObject(jsonArrStr);
Object[] obj = new Object[array.size()];
for (int i = 0; i < array.size(); i++) {
JSONObject jsonObject = array.getJSONObject(i);
obj[i] = JSONObject.toBean(jsonObject, clazz, classMap);
}
return obj;
}
/**
* 把一个json数组串转换成存放普通类型元素的集合
* @param jsonArrStr e.g. ['get',1,true,null]
* @return List
*/
public static List getListFromJsonArrStr(String jsonArrStr) {
JSONArray jsonArr = JSONArray.fromObject(jsonArrStr);
List list = new ArrayList();
for (int i = 0; i < jsonArr.size(); i++) {
list.add(jsonArr.get(i));
}
return list;
}
/**
* 把一个json数组串转换成集合,且集合里存放的为实例Bean
* @param jsonArrStr e.g. [{'name':'get'},{'name':'set'}]
* @param clazz
* @return List
*/
public static List getListFromJsonArrStr(String jsonArrStr, Class clazz) {
JSONArray jsonArr = JSONArray.fromObject(jsonArrStr);
List list = new ArrayList();
for (int i = 0; i < jsonArr.size(); i++) {
list.add(JSONObject.toBean(jsonArr.getJSONObject(i), clazz));
}
return list;
}
/**
* 把一个json数组串转换成集合,且集合里的对象的属性含有另外实例Bean
* @param jsonArrStr e.g. [{'data':[{'name':'get'}]},{'data':[{'name':'set'}]}]
* @param clazz e.g. MyBean.class
* @param classMap e.g. classMap.put("data", Person.class)
* @return List
*/
public static List getListFromJsonArrStr(String jsonArrStr, Class clazz, Map classMap) {
JSONArray jsonArr = JSONArray.fromObject(jsonArrStr);
List list = new ArrayList();
for (int i = 0; i < jsonArr.size(); i++) {
list.add(JSONObject.toBean(jsonArr.getJSONObject(i), clazz, classMap));
}
return list;
}
/**
* 把json对象串转换成map对象
* @param jsonObjStr e.g. {'name':'get','int':1,'double',1.1,'null':null}
* @return Map
*/
public static Map getMapFromJsonObjStr(String jsonObjStr) {
JSONObject jsonObject = JSONObject.fromObject(jsonObjStr);
Map map = new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) {
String key = (String) iter.next();
map.put(key, jsonObject.get(key));
}
return map;
}
/**
* 把json对象串转换成map对象,且map对象里存放的为其他实体Bean
* @param jsonObjStr e.g. {'data1':{'name':'get'},'data2':{'name':'set'}}
* @param clazz e.g. Person.class
* @return Map
*/
public static Map getMapFromJsonObjStr(String jsonObjStr, Class clazz) {
JSONObject jsonObject = JSONObject.fromObject(jsonObjStr);
Map map = new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) {
String key = (String) iter.next();
map.put(key, JSONObject.toBean(jsonObject.getJSONObject(key), clazz));
}
return map;
}
/**
* 把json对象串转换成map对象,且map对象里存放的其他实体Bean还含有另外实体Bean
* @param jsonObjStr e.g. {'mybean':{'data':[{'name':'get'}]}}
* @param clazz e.g. MyBean.class
* @param classMap e.g. classMap.put("data", Person.class)
* @return Map
*/
public static Map getMapFromJsonObjStr(String jsonObjStr, Class clazz, Map classMap) {
JSONObject jsonObject = JSONObject.fromObject(jsonObjStr);
Map map = new HashMap();
for (Iterator iter = jsonObject.keys(); iter.hasNext();) {
String key = (String) iter.next();
map.put(key, JSONObject
.toBean(jsonObject.getJSONObject(key), clazz, classMap));
}
return map;
}
/**
* 把实体Bean、Map对象、数组、列表集合转换成Json串
* @param obj
* @return
* @throws Exception String
*/
public static String getJsonStr(Object obj) {
String jsonStr = null;
//Json配置
JsonConfig jsonCfg = new JsonConfig();
//注册日期处理器
jsonCfg.registerJsonValueProcessor(java.util.Date.class,
new JsonDateValueProcessor(Util.YYYY_MM_DD_HH_MM_ss));
if (obj == null) {
return "{}";
}
if (obj instanceof Collection || obj instanceof Object[]) {
jsonStr = JSONArray.fromObject(obj, jsonCfg).toString();
} else {
jsonStr = JSONObject.fromObject(obj, jsonCfg).toString();
}
return jsonStr;
}
/**
* 把json串、数组、集合(collection map)、实体Bean转换成XML
* XMLSerializer API:
* http://json-lib.sourceforge.net/apidocs/net/sf/json/xml/XMLSerializer.html
* 具体实例请参考:
* http://json-lib.sourceforge.net/xref-test/net/sf/json/xml/TestXMLSerializer_writes.html
* http://json-lib.sourceforge.net/xref-test/net/sf/json/xml/TestXMLSerializer_writes.html
* @param obj
* @return
* @throws Exception String
*/
public static String getXMLFromObj(Object obj) {
XMLSerializer xmlSerial = new XMLSerializer();
//Json配置
JsonConfig jsonCfg = new JsonConfig();
//注册日期处理器
jsonCfg.registerJsonValueProcessor(java.util.Date.class,
new JsonDateValueProcessor(Util.YYYY_MM_DD_HH_MM_ss));
if ((String.class.isInstance(obj) && String.valueOf(obj).startsWith("["))
|| obj.getClass().isArray() || Collection.class.isInstance(obj)) {
JSONArray jsonArr = JSONArray.fromObject(obj, jsonCfg);
return xmlSerial.write(jsonArr);
} else {
JSONObject jsonObj = JSONObject.fromObject(obj, jsonCfg);
return xmlSerial.write(jsonObj);
}
}
/**
* 从XML转json串
* @param xml
* @return String
*/
public static String getJsonStrFromXML(String xml) {
XMLSerializer xmlSerial = new XMLSerializer();
return String.valueOf(xmlSerial.read(xml));
}
}
/**
* json日期值处理器实现
* (C) 2009-9-11, jzj
*/
class JsonDateValueProcessor implements JsonValueProcessor {
private String format = Util.YYYY_MM_DD_HH_MM_ss;
public JsonDateValueProcessor() {
}
public JsonDateValueProcessor(String format) {
this.format = format;
}
public Object processArrayValue(Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig);
}
public Object processObjectValue(String key, Object value, JsonConfig jsonConfig) {
return process(value, jsonConfig);
}
private Object process(Object value, JsonConfig jsonConfig) {
if (value instanceof Date) {
String str = new SimpleDateFormat(format).format((Date) value);
return str;
}
return value == null ? null : value.toString();
}
public String getFormat() {
return format;
}
public void setFormat(String format) {
this.format = format;
}
}
JsonUtilTest
Java代码
package comm.test;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import junit.framework.TestCase;
import comm.JsonUtil;
public class JsonUtilTest
extends TestCase {
public void testGetDtoFromJsonObjStr1() { String json =
"{'name':'get','dateAttr':'2009-11-12'}"; Person ps = (Person) JsonUtil.getDtoFromJsonObjStr(json, Person.
class); System.out.println(ps.getName()); SimpleDateFormat sdf =
new SimpleDateFormat(
"yyyy-MM-dd"); System.out.println(sdf.format(ps.getDateAttr())); }
public void testGetDtoFromJsonObjStr3() { String json =
"{'data':[{'name':'get'},{'name':'set'}]}"; Map classMap =
new HashMap(); classMap.put(
"data", Person.
class); MyBean myBean = (MyBean) JsonUtil.getDtoFromJsonObjStr(json, MyBean.
class, classMap); System.out.println(myBean.getData().get(
0).getClass() +
" name =" + ((Person) myBean.getData().get(
0)).getName()); System.out.println(myBean.getData().get(
1).getClass() +
" name =" + ((Person) myBean.getData().get(
1)).getName()); }
public void testGetArrFromJsonArrStr() { String json =
"['get',1,true,null]"; Object[] objArr = JsonUtil.getArrFromJsonArrStr(json);
for (
int i =
0; i < objArr.length; i++) { System.out.println(objArr[i].getClass() +
" " + objArr[i]); } }
public void testGetDtoArrFromJsonArrStr1() { String json =
"[{'name':'get'},{'name':'set'}]"; Object[] objArr = JsonUtil.getDtoArrFromJsonArrStr(json, Person.
class);
for (
int i =
0; i < objArr.length; i++) { System.out.println(objArr[i].getClass() +
" name = " + ((Person) objArr[i]).getName()); } }
public void testGetDtoArrFromJsonArrStr2() { String json =
"[{'data':[{'name':'get'}]},{'data':[{'name':'set'}]}]"; Map classMap =
new HashMap(); classMap.put(
"data", Person.
class); Object[] objArr = JsonUtil.getDtoArrFromJsonArrStr(json, MyBean.
class, classMap);
for (
int i =
0; i < objArr.length; i++) { System.out.println(((MyBean) objArr[i]).getData().get(
0).getClass() +
" name = " + ((Person) ((MyBean) objArr[i]).getData().get(
0)).getName()); } }
public void testGetListFromJsonArrStr1() { String json =
"['get',1,true,null]"; List list = JsonUtil.getListFromJsonArrStr(json);
for (
int i =
0; i < list.size(); i++) { System.out.println(list.get(i).getClass() +
" " + list.get(i)); } }
public void testGetListFromJsonArrStr2() { String json =
"[{'name':'get'},{'name':'set'}]"; List list = JsonUtil.getListFromJsonArrStr(json, Person.
class);
for (
int i =
0; i < list.size(); i++) { System.out.println(list.get(i).getClass() +
" name = " + ((Person) list.get(i)).getName()); } }
public void testGetListFromJsonArrStr3() { String json =
"[{'data':[{'name':'get'}]},{'data':[{'name':'set'}]}]"; Map classMap =
new HashMap(); classMap.put(
"data", Person.
class); List list = JsonUtil.getListFromJsonArrStr(json, MyBean.
class, classMap);
for (
int i =
0; i < list.size(); i++) { System.out.println(((MyBean) list.get(i)).getData().get(
0).getClass() +
" name = " + ((Person) ((MyBean) list.get(i)).getData().get(
0)).getName()); } }
public void testGetMapFromJsonObjStr() { String json =
"{'name':'get','int':1,'double':1.1,'null':null}"; Map map = JsonUtil.getMapFromJsonObjStr(json);
for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { System.out.println(map.get(iter.next()).getClass()); } }
public void testGetMapFromJsonObjStr2() { String json =
"{'data1':{'name':'get'},'data2':{'name':'set'}}"; Map map = JsonUtil.getMapFromJsonObjStr(json, Person.
class);
for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { String key = (String) iter.next(); System.out.println(map.get(key).getClass() +
" name=" + ((Person) map.get(key)).getName()); } }
public void testGetMapFromJsonObjStr3() { String json =
"{'mybean':{'data':[{'name':'get'}]}}"; Map classMap =
new HashMap(); classMap.put(
"data", Person.
class); Map map = JsonUtil.getMapFromJsonObjStr(json, MyBean.
class, classMap);
for (Iterator iter = map.keySet().iterator(); iter.hasNext();) { String key = (String) iter.next(); Object o = ((MyBean) map.get(key)).getData().get(
0); System.out.println(o.getClass() +
" name=" + ((Person) o).getName()); } }
public void testgetJsonStr1() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); MyBean myBean =
new MyBean(); List list =
new ArrayList(); list.add(ps); myBean.setData(list); System.out.println(JsonUtil.getJsonStr(myBean)); }
public void testgetJsonStr2() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Map map =
new LinkedHashMap(); map.put(
"person1", ps); System.out.println(JsonUtil.getJsonStr(map)); }
public void testgetJsonStr3() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Person[] personArr =
new Person[
1]; personArr[
0] = ps; System.out.println(JsonUtil.getJsonStr(personArr)); }
public void testgetJsonStr4() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); List list =
new ArrayList(); list.add(ps); System.out.println(JsonUtil.getJsonStr(list)); }
public void testgetJsonStr5() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Set set =
new LinkedHashSet(); set.add(ps); System.out.println(JsonUtil.getJsonStr(set)); }
public void testGetXMLFromObj1() { System.out.println(JsonUtil .getXMLFromObj(
"{/"name/":/"json/",/"bool/":true,/"int/":1}")); }
public void testGetXMLFromObj2() { System.out.println(JsonUtil.getXMLFromObj(
"[1,2,3]")); }
public void testGetXMLFromObj3() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Person[] personArr =
new Person[
2]; personArr[
0] = ps; System.out.println(JsonUtil.getXMLFromObj(personArr)); }
public void testGetXMLFromObj4() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); List list =
new ArrayList(); list.add(ps); System.out.println(JsonUtil.getXMLFromObj(list)); }
public void testGetXMLFromObj5() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Set set =
new LinkedHashSet(); set.add(ps); System.out.println(JsonUtil.getXMLFromObj(set)); }
public void testGetXMLFromObj6() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); Map map =
new HashMap(); map.put(
"person1", ps); System.out.println(JsonUtil.getXMLFromObj(map)); }
public void testGetXMLFromObj7() { Person ps =
new Person(); ps.setDateAttr(
new Date()); ps.setName(
"get"); System.out.println(JsonUtil.getXMLFromObj(ps)); }
public void testGetJsonStrFromXML1() { String xml =
"<o><dateAttr type='string'>2009-09-12 07:13:02</dateAttr>" +
"<name type='string'>get</name></o>"; System.out.println(JsonUtil.getJsonStrFromXML(xml)); }
public void testGetJsonStrFromXML2() { String xml =
"<a class='array'><e class='object'><dateAttr type='string'>2009-09-12 07:04:38</dateAttr>" +
"<name type='string'>get</name></e></a>"; System.out.println(JsonUtil.getJsonStrFromXML(xml)); } }