核心包
依赖包 一个不能少
工具类
/** * 处理json数据格式的工具类 * */ public class JSONUtil { /** * 将数组转换成String类型的JSON数据格式 * * @param objects * @return */ public static String array2json(Object[] objects){ JSONArray jsonArray = JSONArray.fromObject(objects); return jsonArray.toString(); } /** * 将list集合转换成String类型的JSON数据格式 * * @param list * @return */ public static String list2json(List list){ JSONArray jsonArray = JSONArray.fromObject(list); return jsonArray.toString(); } /** * 将map集合转换成String类型的JSON数据格式 * * @param map * @return */ public static String map2json(Map map){ JSONObject jsonObject = JSONObject.fromObject(map); return jsonObject.toString(); } /** * 将Object对象转换成String类型的JSON数据格式 * * @param object * @return */ public static String object2json(Object object){ JSONObject jsonObject = JSONObject.fromObject(object); return jsonObject.toString(); } /** * 将XML数据格式转换成String类型的JSON数据格式 * * @param xml * @return */ public static String xml2json(String xml){ JSONArray jsonArray = (JSONArray) new XMLSerializer().read(xml); return jsonArray.toString(); } /** * 除去不想生成的字段(特别适合去掉级联的对象) * * @param excludes * @return */ public static JsonConfig configJson(String[] excludes) { JsonConfig jsonConfig = new JsonConfig(); jsonConfig.setExcludes(excludes); jsonConfig.setIgnoreDefaultExcludes(true); jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); return jsonConfig; } }
public static void main(String[] args) { /***********************模拟查询数据库结果集**************************/ // Province p1 = new Province(1,"吉林省"); // Province p2 = new Province(2,"辽宁省"); // Province p3 = new Province(3,"山东省"); // // List<Province> provinces = new ArrayList<>(); // provinces.add(p1); // provinces.add(p2); // provinces.add(p3); City city1 = new City(1,"长春市"); City city2 = new City(2,"吉林市"); City city3 = new City(3,"松原市"); City city4 = new City(4,"四平市"); City city5 = new City(5,"通化市"); List<City> citys = new ArrayList<City>(); citys.add(city1); citys.add(city2); citys.add(city3); citys.add(city4); citys.add(city5); Province province = new Province(1,"吉林省",citys); /***********************模拟查询数据库结果集**************************/ String json = JSONUtil.object2json(province); System.out.println(json); }
输出结果
{"citys":[{"id":1,"name":"长春市"},{"id":2,"name":"吉林市"},{"id":3,"name":"松原市"},{"id":4,"name":"四平市"},{"id":5,"name":"通化市"}],"id":1,"name":"吉林省"}