JSON 学习笔记

1 导入相关的jar包

     commons-beanutils-1.8.3.jar

     commons-collections-3.2.1.jar

     commons-lang-2.5.jar

     commons-logging-1.1.1.jar

     ezmorph-1.0.6.jar

     json-lib-2.3-jdk15.jar

     morph-1.1.1.jar

    morph-sandbox-1.1.1.jar

2 具体知识

1. json是什么
  * 它是js提供的一种数据交换格式!

2. json的语法
  * {}:是对象!
    > 属性名必须使用双引号括起来!单引不行!!!
    > 属性值:
      * null
      * 数值
      * 字符串
      * 数组:使用[]括起来
      * boolean值:true和false

3. 应用json
  * var person = {"name":"zhangSan", "age":18, "sex":"male"};

4. json与xml比较
* 可读性:XML胜出
* 解析难度:JSON本身就是JS对象(主场作战),所以简单很多
* 流行度:XML已经流行好多年,但在AJAX领域,JSON更受欢迎。


json-lib

1. 是什么?
  * 它可以把javabean转换成json串

2. jar包
  * 略

3. 核心类
  * JSONObject --> Map
    > toString();
    > JSONObject map = JSONObject.fromObject(person):把对象转换成JSONObject对象
  * JSONArray --> List
    > toString()
    > JSONArray jsonArray = JSONObject.fromObject(list):把list转换成JSONArray对象


具体实例:

// 生成json格式: {"id":1,"name":"张三"}

@Test
    public void test1() throws Exception {
        JSONObject map = new JSONObject();
        map.put("id", 1);
        map.put("name", "张三");
        System.out.println(map.toString());
        
    }
    // 把javaBean转换成jsonObject {"id":1,"password":"admin","username":"admin"}
    @Test
    public void test2() throws Exception {
        User user = new User(1,"admin","admin");
        JSONObject map = JSONObject.fromObject(user);
        System.out.println(map.toString());
    }
    
    
    //  jsonArray ---> list 数组
    // [{"id":1,"password":"admin","username":"admin"}]
    // javaBean
    @Test
    public void test3() throws Exception {
        User user = new User(1,"admin","admin");
        JSONArray jsonArray = new JSONArray();
        jsonArray.add(user);
        System.out.println(jsonArray.toString());
    }
    
    // 把List转换成jsonArray
    //[{"id":1,"password":"admin","username":"abc"},{"id":2,"password":"cde","username":"cde"}]
    @Test
    public void test4() throws Exception {
        List<User> list = new ArrayList<User>();
        list.add(new User(1,"abc","admin"));
        list.add(new User(2,"cde","cde"));
        
        // 把list转换成jsonArray
        JSONArray jArray = JSONArray.fromObject(list);
        
        System.out.println(jArray.toString());
    }
    
    // jsonConfig
    //[{"password":"admin"}]
    @Test
    public void test5() throws Exception {
        User user = new User(1,"admin","admin");
        List<User> list = new ArrayList<User>();
        list.add(user);
        
        // >>指定不返回的字段字段
        JsonConfig config = new JsonConfig();
        config.setExcludes(new String[]{"id","username"});
        
        //生成json数据
        String json = JSONArray.fromObject(list,config).toString();
        System.out.println(json);
    }



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值