json和json-lib

JSON数据格式:

JSON对象格式
    {"key":"value","key":"value",....}
    {
    "username":"javk",
    "password":"1234"
    }
键和值使用冒号分隔,key必须使用双引号,value如果没有使用双引号表示变量
JSON数组
    [obj,obj,obj,....]
    ['jack','rose','tom']
组合使用
[
{"id":"b001","title":"java","price":"998"},
{"id":"b002","title":"c++","price":"123"},
{"id":"b003","title":"PHP","price":"234"}

]

工具

(1)json-lib

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.junit.Test;

import com.google.gson.Gson;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;

public class JsonDemo {
    
    /**
     * 以后在使用时 常使用 map javabean list
     * json-lib 将java对象转换成 json数据
     * 工具类分为两种
     *  JSONObject  处理 map  javabean
     *     JSONArray   处理 list 或者 数组
     *
     * 以上两个工具类 提供一样api
     * fromObject  处理对象
     * toString    将最后的数据转换成string格式
     *  
     */
    @Test
    public void demo1(){
        List<String> list = new ArrayList<String>();
        
        list.add("a");
        list.add("b");
        list.add("c");
        //["a","b","c"]
        String jsonStr = JSONArray.fromObject(list).toString();
        System.out.println(jsonStr);
        
    }
    
    @Test
    public void demo2(){
        Map<String,String> map = new HashMap<String,String>();
        
        map.put("a", "xxx");
        map.put("b", "yyy");
        map.put("c", "zzz");
        
        String jsonStr = JSONObject.fromObject(map).toString();
        System.out.println(jsonStr);
        
    }
    
    @Test
    public void demo3(){
        Category category = new Category("c001", "wang");
        String jsonStr = JSONObject.fromObject(category).toString();
        System.out.println(jsonStr);
        
    }
    
    

    @Test
    public void demo4(){
        List<Category> list = new ArrayList<Category>();
        list.add( new Category("c001", "wang"));
        list.add( new Category("c002", "lisi"));
        list.add( new Category("c003", "zhang"));
        
        
        
        String jsonStr = JSONArray.fromObject(list).toString();
        System.out.println(jsonStr);
        
    }
    @Test
    public void demo5(){
        Category category = new Category("c001", "wang");
        //删除不想要的数据
        JsonConfig config = new JsonConfig();
        config.setExcludes(new String[]{"cname","cid"});
        String jsonStr = JSONObject.fromObject(category, config).toString();
        System.out.println(jsonStr);
        
    }
    
    
    
    @Test
    public void demo6(){
        List<String> list = new ArrayList<String>();
        
        list.add("a");
        list.add("b");
        list.add("c");
        //["a","b","c"]
        Gson gson  = new Gson();
        String jsonStr = gson.toJson(list);
        System.out.println(jsonStr);
        
    }
    
    @Test
    public void demo7(){
        Map<String,String> map = new HashMap<String,String>();
        
        map.put("a", "xxx");
        map.put("b", "yyy");
        map.put("c", "zzz");
        
        Gson gson  = new Gson();
        // Json-lib 处理对象里面日期格式会有问题
        // Gson没有
        String jsonStr = gson.toJson(map);
        System.out.println(jsonStr);
        
    }

}




猜你喜欢

转载自blog.csdn.net/lyf_ldh/article/details/80888894
今日推荐