用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - java代码库

后台转换各种JONS数据

2013-07-26 作者: wcj举报

[java]代码库

import java.util.ArrayList;
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;
 
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 对象字符格式中得到一个java对象
     * @param jsonString
     * @param pojoCalss
     * @param classMap
     * @return
     */
    public static Object getObject4JsonString(String jsonString,Class pojoCalss,HashMap classMap){
        Object pojo;
        JSONObject jsonObject = JSONObject.fromObject(jsonString);
        pojo = JSONObject.toBean(jsonObject,pojoCalss,classMap);
        return pojo;
    }   
 
    /**
     * 从一个JSON 对象字符格式中得到一个MorphDynaBean对象
     * @param jsonString
     * @param pojoCalss
     * @param classMap
     * @return
     */   
    public static Object getObject4JsonString(String jsonString){
        JSONObject jsonObject = JSONObject.fromObject(jsonString);
        return jsonObject.toBean(jsonObject);
    }   
     
    /**
     * 从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).toString().equals("null")?null: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;
 
    }
     
    /**
     * 从json数组中解析出java字符串数组
     * @param jsonString
     * @return
     */
    public static String[] getStringArray4Json(String jsonString){
         
        JSONArray jsonArray = JSONArray.fromObject(jsonString);
        String[] stringArray = new String[jsonArray.size()];
        for( int i = 0 ; i<jsonArray.size() ; i++ ){
            stringArray[i] = jsonArray.getString(i);
             
        }
         
        return stringArray;
    }
     
     
     
    
     
    /** *//**
     * 从json数组中解析出java Date 型对象数组,使用本方法必须保证
     * @param jsonString
     * @return
     */
    /*
    public static Date[] getDateArray4Json(String jsonString,String DataFormat){
         
        JSONArray jsonArray = JSONArray.fromObject(jsonString);
        Date[] dateArray = new Date[jsonArray.size()];
        String dateString;
        Date date;
         
        for( int i = 0 ; i<jsonArray.size() ; i++ ){
            dateString = jsonArray.getString(i);
            date = DateUtil.stringToDate(dateString, DataFormat);
            dateArray[i] = date;
             
        }
        return dateArray;
    }*/
     
    
     
     
    /**
     * 将java对象转换成json字符串
     * @param javaObj
     * @return
     */
    public static String getJsonString4JavaPOJO(Object javaObj){
        JSONObject json;
        json = JSONObject.fromObject(javaObj);
        return json.toString();
    }
     
    /**
     * 将List转换成json字符串
     * @param list
     * @return
     */
    public static String getJsonString4List(List list){
        if(null==list){
            list = new ArrayList();
        }
        JSONArray json;
        json = JSONArray.fromObject(list);
        return json.toString();
    }  
     
    /**
     * 将List转换成json字符串
     * @param list
     * @return
     */
    public static String getJsonString4Map(Map map){
        JSONArray json;
        json = JSONArray.fromObject(map);
        return json.toString();
    }
     
    /** *//**
     * 将java对象转换成json字符串,并设定日期格式
     * @param javaObj
     * @param dataFormat
     * @return
     */
    /*
    public static String getJsonString4JavaPOJO(Object javaObj , String dataFormat){
         
        JSONObject json;
        JsonConfig jsonConfig = configJson(dataFormat);
        json = JSONObject.fromObject(javaObj,jsonConfig);
        return json.toString();
         
         
    }
    */
     
    /** *//**
     * JSON 时间解析器具
     * @param datePattern
     * @return
     */
    /*
    public static JsonConfig configJson(String datePattern) {  
            JsonConfig jsonConfig = new JsonConfig();  
            jsonConfig.setExcludes(new String[]{""});  
            jsonConfig.setIgnoreDefaultExcludes(false);  
            jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);  
            jsonConfig.registerJsonValueProcessor(Date.class,  
                new DateJsonValueProcessor(datePattern));  
           
            return jsonConfig;  
        
    */
     
    /** *//**
     *
     * @param excludes
     * @param datePattern
     * @return
     */
    /*
    public static JsonConfig configJson(String[] excludes,  
            String datePattern) {  
            JsonConfig jsonConfig = new JsonConfig();  
            jsonConfig.setExcludes(excludes);  
            jsonConfig.setIgnoreDefaultExcludes(false);  
            jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);  
            jsonConfig.registerJsonValueProcessor(Date.class,  
                new DateJsonValueProcessor(datePattern));  
            return jsonConfig;  
        
    */
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...