您好,登录后才能下订单哦!
密码登录
            
            
            
            
        登录注册
            
            
            
        点击 登录注册 即表示同意《亿速云用户服务条款》
        本篇文章为大家展示了如何进行JSON与JAVA的数据转换,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
JSON-lib这个Java类包用于把bean,map和XML转换成JSON并能够把JSON转回成bean和DynaBean。
还要需要的第3方包:
org.apache.commons(3.2以上版本)
org.apache.oro
net.sf.ezmorph(ezmorph-1.0.4.jar)
nu.xom
1、List
boolean[] boolArray = new boolean[]{true,false,true};        JSONArray jsonArray1 = JSONArray.fromObject( boolArray );       System.out.println( jsonArray1 );        // prints [true,false,true]           List list = new ArrayList();        list.add( "first" );        list.add( "second" );        JSONArray jsonArray2 = JSONArray.fromObject( list );        System.out.println( jsonArray2 );       / prints ["first","second"]        JSONArray jsonArray3 = JSONArray.fromObject( "['json','is','easy']" );        System.out.println( jsonArray3 );        // prints ["json","is","easy"]         boolean[] boolArray = new boolean[]{true,false,true};      JSONArray jsonArray1 = JSONArray.fromObject( boolArray );      System.out.println( jsonArray1 );       // prints [true,false,true]          List list = new ArrayList();       list.add( "first" );       list.add( "second" );       JSONArray jsonArray2 = JSONArray.fromObject( list );       System.out.println( jsonArray2 );       // prints ["first","second"]       JSONArray jsonArray3 = JSONArray.fromObject( "['json','is','easy']" );       System.out.println( jsonArray3 );       // prints ["json","is","easy"]
2、Map
 Map map = new HashMap();       map.put( "name", "json" );       map.put( "bool", Boolean.TRUE );           map.put( "int", new Integer(1) );       map.put( "arr", new String[]{"a","b"} );       map.put( "func", "function(i){ return this.arr[i]; }" );       JSONObject json = JSONObject.fromObject( map );       System.out.println( json );        //{"func":function(i){ return this.arr[i]; },"arr":["a","b"],"int":1,"name":"json","bool":true}     Map map = new HashMap();      map.put( "name", "json" );      map.put( "bool", Boolean.TRUE );         map.put( "int", new Integer(1) );      map.put( "arr", new String[]{"a","b"} );      map.put( "func", "function(i){ return this.arr[i]; }" );      JSONObject json = JSONObject.fromObject( map );      System.out.println( json );      //{"func":function(i){ return this.arr[i]; },"arr":["a","b"],"int":1,"name":"json","bool":true}
3、BEAN
           JSONObject jsonObject = JSONObject.fromObject( new JsonBean() );          System.out.println( jsonObject );          //{"func1":function(i){ return this.options[i]; },"pojoId":1,"name":"json","options":["a","f"],"func2":function(i){ return this.options[i]; }}        JSONObject jsonObject = JSONObject.fromObject( new JsonBean() );     System.out.println( jsonObject );      //{"func1":function(i){ return this.options[i]; },"pojoId":1,"name":"json","options":["a","f"],"func2":function(i){ return this.options[i]; }}
4、BEANS
      List list = new ArrayList();            JsonBean2 jb1 = new JsonBean2();            jb1.setCol(1);            jb1.setRow(1);            jb1.setValue("xx");                        JsonBean2 jb2 = new JsonBean2();            jb2.setCol(2);            jb2.setRow(2);            jb2.setValue("");                         list.add(jb1);            list.add(jb2);                        JSONArray ja = JSONArray.fromObject(list);            System.out.println( ja.toString() );            //[{"value":"xx","row":1,"col":1},{"value":"","row":2,"col":2}]         List list = new ArrayList();          JsonBean2 jb1 = new JsonBean2();          jb1.setCol(1);          jb1.setRow(1);          jb1.setValue("xx");                    JsonBean2 jb2 = new JsonBean2();          jb2.setCol(2);          jb2.setRow(2);          jb2.setValue("");                              list.add(jb1);          list.add(jb2);                    JSONArray ja = JSONArray.fromObject(list);          System.out.println( ja.toString() );          //[{"value":"xx","row":1,"col":1},{"value":"","row":2,"col":2}]
5、String to bean
    String json = "{name=\"json\",bool:true,int:1,double:2.2,func:function(a){ return a; },array:[1,2]}";          JSONObject jsonObject = JSONObject.fromString(json);          Object bean = JSONObject.toBean( jsonObject );            assertEquals( jsonObject.get( "name" ), PropertyUtils.getProperty( bean, "name" ) );            assertEquals( jsonObject.get( "bool" ), PropertyUtils.getProperty( bean, "bool" ) );            assertEquals( jsonObject.get( "int" ), PropertyUtils.getProperty( bean, "int" ) );            assertEquals( jsonObject.get( "double" ), PropertyUtils.getProperty( bean, "double" ) );            assertEquals( jsonObject.get( "func" ), PropertyUtils.getProperty( bean, "func" ) );            List expected = JSONArray.toList( jsonObject.getJSONArray( "array" ) );            assertEquals( expected, (List) PropertyUtils.getProperty( bean, "array" ) );       String json = "{name=\"json\",bool:true,int:1,double:2.2,func:function(a){ return a; },array:[1,2]}";     JSONObject jsonObject = JSONObject.fromString(json);     Object bean = JSONObject.toBean( jsonObject );       assertEquals( jsonObject.get( "name" ), PropertyUtils.getProperty( bean, "name" ) );       assertEquals( jsonObject.get( "bool" ), PropertyUtils.getProperty( bean, "bool" ) );       assertEquals( jsonObject.get( "int" ), PropertyUtils.getProperty( bean, "int" ) );       assertEquals( jsonObject.get( "double" ), PropertyUtils.getProperty( bean, "double" ) );       assertEquals( jsonObject.get( "func" ), PropertyUtils.getProperty( bean, "func" ) );       List expected = JSONArray.toList( jsonObject.getJSONArray( "array" ) );       assertEquals( expected, (List) PropertyUtils.getProperty( bean, "array" ) );  String json = "{\"value\":\"xx\",\"row\":1,\"col\":1}";         JSONObject jsonObject = JSONObject.fromString(json);      JsonBean2 bean = (JsonBean2) JSONObject.toBean( jsonObject, JsonBean2.class );             assertEquals( jsonObject.get( "col" ),new Integer( bean.getCol())  );             assertEquals( jsonObject.get( "row" ), new Integer( bean.getRow() ) );             assertEquals( jsonObject.get( "value" ), bean.getValue() );       String json = "{\"value\":\"xx\",\"row\":1,\"col\":1}";     JSONObject jsonObject = JSONObject.fromString(json);  JsonBean2 bean = (JsonBean2) JSONObject.toBean( jsonObject, JsonBean2.class );         assertEquals( jsonObject.get( "col" ),new Integer( bean.getCol())  );         assertEquals( jsonObject.get( "row" ), new Integer( bean.getRow() ) );         assertEquals( jsonObject.get( "value" ), bean.getValue() );6  json to xml
1)
JSONObject json = new JSONObject( true ); String xml = XMLSerializer.write( json );
< o class="object" null="true">
2)
JSONObject json = JSONObject.fromObject("{\"name\":\"json\",\"bool\":true,\"int\":1}");  String xml = XMLSerializer.write( json );< o class="object"> < name type="string">json< /name> < bool type="boolean">true< /bool> < int type="number">1< /int> < /o> < o class="object"> < name type="string">json< /name> < bool type="boolean">true< /bool> < int type="number">1< /int> < /o>
3)
JSONArray json = JSONArray.fromObject("[1,2,3]");  String xml = XMLSerializer.write( json );< a class="array"> < e type="number">1< /e> < e type="number">2< /e> < e type="number">3< /e> < /a>
7 、xml to json
< a class="array"> < e type="function" params="i,j"> return matrix[i][j]; < /e> < /a> < a class="array"> < e type="function" params="i,j"> return matrix[i][j]; < /e> < /a>
JSONArray json = (JSONArray) XMLSerializer.read( xml );  System.out.println( json );  // prints [function(i,j){ return matrix[i][j]; }]上述内容就是如何进行JSON与JAVA的数据转换,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。