<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    風人園

    弱水三千,只取一瓢,便能解渴;佛法無邊,奉行一法,便能得益。
    隨筆 - 99, 文章 - 181, 評論 - 56, 引用 - 0
    數據加載中……

    svenson, 一個用于生成和解析JSON數據格式的Java5開源類庫 (ZT)


    轉載自 http://m.tkk7.com/xmatthew/archive/2008/12/29/248998.html

    svenson是一個用于生成和解析JSON數據格式的Java5開源類庫。它能夠將JSON數據集轉換成Java對象或相反的操作。

    下面是一些示例:

    Svenson offers you the possibility to generate JSON datasets from your java classes being a nested graph of:

    • POJOs
    • Java Beans
    • Arrays
    • Collections
    • Maps

    In the most simple case you can just do a

    import org.svenson.JSON;



    ...







    String json = JSON.defaultJSON().forValue( yourObjects );

    you can also generate JSON while ignoring certain properties:

    import org.svenson.JSON;



    ...







    String json = JSON.defaultJSON().forValue( yourObjects, Arrays.asList("foo","bar"));

    This would generate JSON for "yourObjects" while ignoring all properties named "foo" and "bar" in all beans.

    @JSONProperty

    The org.svenson.JSONProperty annotation allows you to define another JSON property name for your properties, make JSON ignore your properties completely or ignore them if they are null.

    import org.svenson.JSON;



    import org.svenson.JSONProperty;







    public class MyBean



    {



       
    private String foo,bar,baz;

       
    @JSONProperty("notFoo")
       
    public String getFoo()
       
    {
         
    return foo;
       
    }

       
    @JSONProperty(ignoreIfNull = true)
       
    public String getBar()
       
    {
           
    return foo;
       
    }

       
    @JSONProperty(ignore = true)
       
    public String getBaz()
       
    {
           
    return foo;
       
    }

    }

    Here the foo property would be generated as "notFoo" property in JSON, the "bar" property would be ignored if it is null, and the "baz" property would be ignored completely.

    JSONable

    If your classes implement the org.svenson.JSONable, they can provide their own JSON representation.

    import org.svenson.JSON;



    import org.svenson.JSONable;







    public class MyClass implements JSONable



    {



       
    private String member;



       
    ...



       
    public String toJSON()



       
    {



             
    return JSON.defaultJSON().quote(this.member);



       
    }



    }

    Here MyClass would just generate one of its members as JSON string. As you can see, you can use the JSON class to help you implementing toJSON().

    JSONifier

    A JSONifier is a class that can convert another class into JSON. It needs to implement org.svenson.JSONifier.

    import org.svenson.JSON;



    import org.svenson.JSONifier;







    public class MyJSONifier implements JSONifier



    {



       
    public String toJSON(Object o)



       
    {



             
    MyClass myClass = (MyClass)o;



             
    return JSON.defaultJSON().quote(myClass.getMember());



       
    }



    }

    This would be a simple JSONifier that turns instances of MyClass into JSON by replacing them with one of its members. To use this JSONifier you have to register it in your own JSON instance.

    import org.svenson.JSON;



       
    ...



       
    // assume myClassInstance is an instance of MyClass



        JSON json
    = new JSON();



        json
    .registerJSONifier(MyClass.class, new MyJSONifier());







       
    String output = json.forValue( myClassInstance);

    svenson 官方網址:http://code.google.com/p/svenson/

    posted on 2009-04-15 16:48 風人園 閱讀(762) 評論(0)  編輯  收藏 所屬分類: Open Source

    主站蜘蛛池模板: 亚洲乱码中文字幕综合| 成人免费777777| 亚洲日韩激情无码一区| 无码AV动漫精品一区二区免费| 91亚洲va在线天线va天堂va国产 | 亚洲av日韩av永久在线观看| 在线看片免费不卡人成视频| 亚洲婷婷综合色高清在线| 猫咪免费人成网站在线观看| 中文字幕亚洲综合久久2| 四虎成年永久免费网站| 亚洲影视自拍揄拍愉拍| 毛片免费在线观看网站| 亚洲精品蜜夜内射| 国产在线观看免费不卡 | 亚洲一区二区三区免费| 中文字幕无码精品亚洲资源网| 久久久久久久久久免免费精品 | 最新亚洲卡一卡二卡三新区| 国产成人A在线观看视频免费| 亚洲伊人久久大香线蕉AV| 日本v片免费一区二区三区| 国产产在线精品亚洲AAVV| 亚洲国产综合无码一区二区二三区 | 永久免费视频v片www| 免费人成视频在线观看免费| 久久久久一级精品亚洲国产成人综合AV区 | 亚洲黄色免费电影| 亚洲熟女精品中文字幕| 国产猛烈高潮尖叫视频免费| 一个人看的www免费高清| 亚洲视频在线观看一区| 免费人成视频在线| 国产精品美女久久久免费| 中文字幕亚洲第一在线| 日韩午夜免费视频| 特级做A爰片毛片免费看无码| 亚洲成人影院在线观看| 日韩成人免费视频| 女bbbbxxxx另类亚洲| 亚洲国产精品无码久久SM|