1.数组转换成json
Log log = LogFactory.getLog("loginAction");
public void arrayJson(){
boolean[] boolArray = new boolean[]{true,false,true};
JSONArray jsonArray = JSONArray.fromObject(boolArray);
log.info("array json toString:" + jsonArray.toString());
log.info("array json infoArray:");
for(int i=0; i< jsonArray.toArray().length;i++){
log.info(i + ":"+jsonArray.toArray()[i]);
}
}
2.集合转换成json
list 转换成json
public void listJson(){
List list = new ArrayList();
list.add("丽仪");
list.add("陈盈");
list.add("小红");
JSONArray jsonArray = JSONArray.fromObject(list);
log.info("json list:" + jsonArray.toString());
log.info("get:" + jsonArray.get(0));
log.info("getString:" +jsonArray.getString(1));
}
map转换成json
public void fromObject(){
JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']");
log.info("String formObject:" + jsonArray3.toString());
Map map = new HashMap();
map.put("name","json");
map.put("bool",Boolean.TRUE);
map.put("int",new Integer(1));
map.put("arr",new String[]{"a","b"});
map.put("func","function(i){return this.arr[i];}");
log.info("map from object");
JSONArray jsonMap = JSONArray.fromObject(map);
log.info("map json:" + jsonMap);
}
3.bean转换成json
public void beanJson(){
Employee liyi = new Employee();
liyi.setFirstName("刘");
liyi.setLastName("丽仪");
liyi.setOtherInfo(new String[]{"啊仪","丽仪","啊姨"});
JSONObject jsonObject = JSONObject.fromObject(liyi);
log.info(jsonObject);
}
4.json转换成xml
public void jsonToXml(){
Employee liyi = new Employee();
liyi.setFirstName("刘");
liyi.setLastName("丽仪");
liyi.setOtherInfo(new String[]{"啊仪","丽仪","啊姨"});
JSONObject jsonObject = JSONObject.fromObject(liyi);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(jsonObject);
log.info("xml:" + xml);
}
5.servlet如何返回该对象
response.setContentType("applicatioin/json; charset=UTF-8");
response.setHeader("Cache-Control", "nocache");
response.getWriter().write(jsonArray.toString());
6、从JSON到Beans
//转化为动态bean
String myjson = "{name=""json"",bool:true,int:1,double:2.2,function:function(a){return a;},array:[1,2]}";
JSONObject json1 = JSONObject.fromString(myjson);
Object bean1 = JSONObject.toBean(json1);
7、由JSON生成XML
JSONObject json = new JSONObject(true);
XMLSerializer xmlSerializer = new XMLSerializer();
String xml = xmlSerializer.write(json);
System.out.println("xml:" + xml);
输出:xml:<?xml version="1.0" encoding="UTF-8"?>
<o null="true"/>
JSONObject json2 = JSONObject.fromObject("{""name"":""json"",""bool"":true,""int"":1}");
String xml2 = xmlSerializer.write(json2);
System.out.println("xml2:" + xml2);
输出:xml2:<?xml version="1.0" encoding="UTF-8"?>
<o><bool type="boolean">true</bool><int type="number">1</int><name type="string">json</name></o>
JSONArray json3 = JSONArray.fromObject("[1,2,3]");
String xml3 = xmlSerializer.write(json3);
System.out.println("xml3:" + xml3);
输出:xml3:<?xml version="1.0" encoding="UTF-8"?>
<a><e type="number">1</e><e type="number">2</e><e type="number">3</e></a>