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

本来想自己写一下的,可是发现这篇文件写的不错,就直接贴上来了

文件出自http://blog.csdn.net/wingfeng19800215/archive/2008/03/19/2198275.aspx  

   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;

/** *//**
 * @author </br> <a href="mailto:fx19800215@163.com"> robert.feng</a>
 *
 */
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;
     }
    
    
    /** *//**
      * 从json数组中得到相应java数组
      * @param jsonString
      * @return
     */
    public static Object[] getObjectArray4Json(String jsonString)...{
         JSONArray jsonArray = JSONArray.fromObject(jsonString);
        return jsonArray.toArray();
        
     }
    
    
    /** *//**
      * 从json对象集合表达式中得到一个java对象列表
      * @param jsonString
      * @param pojoClass
      * @return
     */
    public static List getList4Json(String jsonString, Class pojoClass)...{
        
         JSONArray jsonArray = JSONArray.fromObject(jsonString);
         JSONObject jsonObject;
         Object pojoValue;
        
         List list = new ArrayList();
        for ( int i = 0 ; i<jsonArray.size(); i++)...{
            
             jsonObject = jsonArray.getJSONObject(i);
             pojoValue = JSONObject.toBean(jsonObject,pojoClass);
             list.add(pojoValue);
            
         }
        return list;

     }

posted @ 2013-05-30 15:10  Struts-pring  阅读(430)  评论(0编辑  收藏  举报