日期:2014-05-16  浏览次数:20387 次

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

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

进入需要在项目中用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;

?

/**

?* @author robert.feng

?*

?*/

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();