json工具类

bean:
package json;
import java.util.ArrayList;

public class TestBean {
       
        private String knowlege;
        private ArrayList itemlist;
       
        @Override
        public String toString() {
               
                return knowlege+itemlist;
        }

        public ArrayList getItemlist() {
                return itemlist;
        }

        public void setItemlist(ArrayList itemlist) {
                this.itemlist = itemlist;
        }

        public String getKnowlege() {
                return knowlege;
        }

        public void setKnowlege(String knowlege) {
                this.knowlege = knowlege;
        }

 

}
完整的一个类:
package json;

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.alibaba.china.biz.common.util.DateUtil;
/**
 *
 * @author yongkang.qiyk
 *
 */
public class JsonTest2 {
            /** *//**
             * 从一个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;

            }
           
            /** *//**
             * 从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数组中解析出javaLong型对象数组
             * @param jsonString
             * @return
             */
            public static Long[] getLongArray4Json(String jsonString){
               
                JSONArray jsonArray = JSONArray.fromObject(jsonString);
                Long[] longArray = new Long[jsonArray.size()];
                for( int i = 0 ; i<jsonArray.size() ; i++ ){
                    longArray[i] = jsonArray.getLong(i);
                   
                }
                return longArray;
            }
           
            /** *//**
             * 从json数组中解析出java Integer型对象数组
             * @param jsonString
             * @return
             */
            public static Integer[] getIntegerArray4Json(String jsonString){
               
                JSONArray jsonArray = JSONArray.fromObject(jsonString);
                Integer[] integerArray = new Integer[jsonArray.size()];
                for( int i = 0 ; i<jsonArray.size() ; i++ ){
                    integerArray[i] = jsonArray.getInt(i);
                   
                }
                return integerArray;
            }
           
        
           
            /** *//**
             * 从json数组中解析出java Integer型对象数组
             * @param jsonString
             * @return
             */
            public static Double[] getDoubleArray4Json(String jsonString){
               
                JSONArray jsonArray = JSONArray.fromObject(jsonString);
                Double[] doubleArray = new Double[jsonArray.size()];
                for( int i = 0 ; i<jsonArray.size() ; i++ ){
                    doubleArray[i] = jsonArray.getDouble(i);
                   
                }
                return doubleArray;
            }
           
           
            /** *//**
             * 将java对象转换成json字符串
             * @param javaObj
             * @return
             */
            public static String getJsonString4JavaPOJO(Object javaObj){
               
                JSONObject json;
                json = JSONObject.fromObject(javaObj);
                return json.toString();
               
            }
                   
public static void main(String[] args) {
        ArrayList list = new ArrayList();
        list.add("dssdsdd");
        list.add("dssdsdd");
        list.add("dssdsdd");
        HashMap map = new HashMap();
        map.put("name","yongkang");
        map.put("key","fddf");
        TestBean textBean = new TestBean();
        textBean.setKnowlege("dssd");
        textBean.setItemlist(list);
        //将对象转换为json字符串
//        JSONObject json=JSONObject.fromObject(textBean);
//        System.out.println(json);
        System.out.println(getJsonString4JavaPOJO(textBean));
        System.out.println("=======================================================");
        //将字符串转换为为对象
        String jsonString="{'itemlist':['hello1','hello2','hello3','hello4'],'knowlege':'123'}";
//        JSONObject json2=JSONObject.fromObject(jsonString);
//        TestBean tt=(TestBean) json2.toBean(json2, TestBean.class);
//        System.out.println(tt.getItemlist());
        System.out.println(getObject4JsonString(jsonString,TestBean.class));
}
}

你可能感兴趣的:(java,json,.net,bean)