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

本文提供了一组实用的Java方法,用于将JSON字符串转换为Java对象、Map、数组及对象列表,包括详细的代码实现和注释说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

文件出自http://blog.youkuaiyun.com/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;

     }

转载于:https://www.cnblogs.com/Struts-pring/archive/2013/05/30/3108249.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值