JsonConfig的常见的方法

(一)jsonConfig.setExcludes()用法

         (除去或者过滤一些属性或者字段的值【用不到的一些值】)

            1,申明一个String的格式的字符串

             String str="{'String':'JSON','Id':'1','name':'cook','age':'20','address':'shiyan'}";

             2,实例化一个JSoncongif的对象

             JsonConfig jsonConfig=new JsonConfig();

             3.调用setsetExcludes方法   过滤一些属性的值 比喻 “age”,“address”。

             jsonConfig.setExcludes(new String[]{"age","address"});

             /*过滤了属性age,addres的值*/

             4.将String的字符串转换成JSon格式

             JSONObject jsonObject=JSONObject.fromObject(str,jsonConfig);

             5,输出json里面的数据

             System.out.println(jsonObject);

            

             System.out.println(jsonObject.get("String"));
             System.out.println(jsonObject.get("Id"));
             System.out.println(jsonObject.get("name"));
             System.out.println(jsonObject.get("age"));
             System.out.println(jsonObject.get("address"));

 

            结果:

           {"String":"JSON","Id":"1","name":"cook"}
              JSON
                1
              cook
              null 

              null

 

 

 

(2) jsonConfig.setJsonPropertyFilter()的用法以及作用

       1,实例化一个JsonConfig对象

        JsonConfig jsonConfig=new JsonConfig();

       2. 调用 jsonConfig.setJsonPropertyFilter()方法

        jsonConfig.setJsonPropertyFilter(new PropertyFilter() {
             //apply是PropertyFilter的方法
            public boolean apply(Object arg0, String arg1, Object arg2) {
             //arg0是指属性的类

             //arg1是指属性的字段

             //arg2是指属性的值


 

             //判断条件(arg0是不是当前Emp类并且过滤属性为name的值)

              return arg0 instanceof Emp && arg1.equals("name");
            }
        });

        3,实例化一个Emp对象

            Emp emp=new Emp("zhangsan", 20, "shiyan");

        4,将emp对象转换成Json格式

            JSONObject jsonObject=JSONObject.fromObject(emp, jsonConfig);

        5,输出jsop里面的值

            System.out.println(jsonObject);
            System.out.println("id---"+jsonObject.get("id"));
            System.out.println("anme---"+jsonObject.get("name"));
            System.out.println("age---"+jsonObject.get("age"));
            System.out.println("address---"+jsonObject.get("address"));

          6.结果

           {"address":"shiyan","age":20,"id":0}
            id---0
            name---null
            age---20
            address---shiyan

posted on 2018-01-26 11:13  acaca  阅读(1495)  评论(0编辑  收藏  举报