<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://www.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

    主站蜘蛛池模板: 亚洲成a人片在线网站| 九月丁香婷婷亚洲综合色| 亚洲欧洲日本在线观看| 亚洲第一成年免费网站| tom影院亚洲国产一区二区| 97视频免费在线| 中文字幕亚洲男人的天堂网络| 国产福利视精品永久免费| 亚洲av永久无码精品三区在线4| 免费在线观看的网站| 亚洲丁香婷婷综合久久| 四虎影视免费永久在线观看| 黄页免费视频播放在线播放| 亚洲一区二区三区国产精品| a色毛片免费视频| 久久精品国产亚洲AV无码娇色 | 国产区在线免费观看| 国精无码欧精品亚洲一区| a级毛片免费高清毛片视频| 亚洲视频在线观看网址| 成人免费看片又大又黄| 老司机午夜性生免费福利| 亚洲人精品午夜射精日韩| 99在线观看免费视频| 亚洲欧美不卡高清在线| 久久亚洲高清综合| 久久aa毛片免费播放嗯啊| 亚洲综合激情五月色一区| 亚洲M码 欧洲S码SSS222| 在线看片免费人成视频播| 亚洲国产精品日韩在线| 免费国产美女爽到喷出水来视频| 两个人看的www高清免费观看| 亚洲日产2021三区在线| 免费一看一级毛片| 午夜精品射精入后重之免费观看| 国产成人精品亚洲日本在线| 日韩亚洲精品福利| 日韩在线免费视频| 美女视频黄频a免费观看| 亚洲人成电影福利在线播放|