javabean转json (利用第三方jar包)

来源:互联网 发布:baocms7.1完整源码 编辑:程序博客网 时间:2024/06/06 04:41

利用反射机制,将实体类中的属性进行反射为json形式的数据


导入第三方jar包 (http://pan.baidu.com/s/1o88tHjG)


编写一个实体类:City.java

package com.mo.bean2json;public class City {private int id;private String name;public City(int id, String name) {super();this.id = id;this.name = name;}}
编写测试类;

·将一个实体类转换为json数据

@Testpublic void bean2json(){City city = new City(1,"广州");JSONArray jsonArray = JSONArray.fromObject(city);System.out.println(jsonArray);//[{"id":1,"name":"广州"}]}

·将一个list转换为json数据

@Testpublic void list2json(){List<City> list = new ArrayList<City>();list.add(new City(1,"广州"));list.add(new City(2,"珠海"));list.add(new City(3,"深圳"));JSONArray jsonArray = JSONArray.fromObject(list);System.out.println(jsonArray);//[{"id":1,"name":"广州"},{"id":2,"name":"珠海"},{"id":3,"name":"深圳"}]}

·将一个存在list的bean转换为json

编写一个bean

package com.mo.bean2json;import java.util.ArrayList;import java.util.List;public class Province {private int id;private String name;private List<City> cityList = new ArrayList<City>();//这里的set get方法省略
}

测试类

@Testpublic void beanlist2json(){List<City> list = new ArrayList<City>();list.add(new City(1,"广州"));list.add(new City(2,"珠海"));Province province = new Province(1,"广东",list);JSONArray jsonArray = JSONArray.fromObject(province);System.out.println(jsonArray);/*[{"id":1,"cityList":[{"id":1,"name":"广州"},{"id":2,"name":"珠海"}],"name":"广东"}]*/}


·map转json

@Testpublic void map2json(){List<City> list = new ArrayList<City>();list.add(new City(1,"广州"));list.add(new City(2,"珠海"));Map<String,Object> map = new LinkedHashMap<String,Object>();map.put("total",list.size());map.put("rows",list);JSONArray fromObject = JSONArray.fromObject(map);System.out.println(fromObject);/*[ { "total":2, "rows":[{"id":1,"name":"广州"},{"id":2,"name":"珠海"}] } ]*///去掉外面的中括号String jsonJAVA = fromObject.toString();String substring = jsonJAVA.substring(1, jsonJAVA.length()-1);System.out.println(substring);/*{"total":2,"rows":[{"id":1,"name":"广州"},{"id":2,"name":"珠海"}]}*/}


0 0
原创粉丝点击