一个java处理JSON格式数据的通用类

2014-11-15 13:45:35 · 作者: · 浏览: 27

  进入需要在项目中用java处理json格式的数据,因此封装了一个class,现将这个class共享出来和大家分享


  /**


  * Copyright (c) linkwise 2007-2009 corporation.


  * All rights reserved


  */


  package com.linghui.common.util;


  import java.util.ArrayList;


  import java.util.Date;


  import java.util.HashMap;


  import java.util.Iterator;


  import java.util.List;


  import java.util.Map;


  import net.sf.json.JSONArray;


  import net.sf.json.JSONObject;


  import net.sf.json.JsonConfig;


  import net.sf.json.util.CycleDetectionStrategy;


  import com.linghui.common.util.DateUtil;


  import com.linghui.common.util.jsonutil.DateJsonValueProcessor;


  /**


  *


  */


  public class JsonUtil {


  /**


  * 从一个JSON 对象字符格式中得到一个java对象


  * @param jsonString


  * @param pojoCalss


  * @return


  */


  public static Object getObject4JsonString(String jsonString,Class pojoCalss){


  Object pojo;


  JSONObject jsonObject = JSONObject.fromObject( jsonString );


  pojo = JSONObject.toBean(jsonObject,pojoCalss);


  return pojo;


  }


  /**


  * 从json HASH表达式中获取一个map,改map支持嵌套功能


  * @param jsonString


  * @return


  */


  public static Map getMap4Json(String jsonString){


  JSONObject jsonObject = JSONObject.fromObject( jsonString );


  Iterator keyIter = jsonObject.keys();


  String key;


  Object value;


  Map valueMap = new HashMap();


  while( keyIter.hasNext())


  {


  key = (String)keyIter.next();


  value = jsonObject.get(key);


  valueMap.put(key, value);


  }


  return valueMap;


  }