瘋狂

          STANDING ON THE SHOULDERS OF GIANTS
          posts - 481, comments - 486, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          object<->XML之simple

          Posted on 2010-01-29 13:07 瘋狂 閱讀(2323) 評論(3)  編輯  收藏 所屬分類: java xml

                 Simple 是一個 Java 框架,用于簡化序列化和反序列化 XML 的過程。使用 Simple,開發人員可以簡化(名字由此而來)將簡單老 Java 對象(POJO)轉換成 XML 文檔的過程 — 即所謂的序列化(serialization)過程。Simple 也可促進相反的過程:開發人員可以將 XML 文檔轉換成 POJO — 即所謂的反序列化(deserialization)過程。

              Simple 名副其實,它使用注解來支持序列化和反序列化過程。根據相應的 XML 文檔應該如何出現,對 POJO 進行注解。一些字段被注解為屬性,另一些字段被注解為元素。類通常被注解為根元素。在序列化過程中,該框架處理冗長的解釋注解和產生相應 XML 文檔的過程。無足為奇,在 XML 文檔被轉換成 POJO 的反序列化過程中,注解也會被解釋。

          使用 Simple 有幾個優勢。首先,它促進快速應用程序開發。Simple 是如此簡單,它支持開發人員快速實現健壯的、使用 XML 序列化和反序列化的應用程序,無需完成長長的學習曲線以及付出繁重的開發勞動。

          其次,Simple 不需要配置。前面已經提到,Simple 使用注解。這些注解取代了基于 XML 的配置文件(其他框架一般都有這樣的配置文件)。

          最后,Simple 只讓使用它的應用程序增加少量的內存占用。JAR文件只有 239 KB。Simple 也不依賴于一系列其他 JAR 文件,而其他框架則通常不是這樣的。
          jar下載地址:http://simple.sourceforge.net/track/get.php?version=2.2&package=simple-xml-2.2.zip

           簡單實例:bean--》xml
           bean:

          @Root
          public class Example {
          @Element
          private String text;
          @Attribute
          private int index;
          public Example() {
          super();
          }
          public Example(String text, int index) {
          this.text = text;
          this.index = index;
          }
          public String getMessage() {
          return text;
          }
          public int getId() {
          return index;
          }
          }
          
          測試代碼:

          Serializer serializer = new Persister();
          Example example = new Example("Example message", 123);
          File result = new File("example.xml");
          serializer.write(example, result);
          
          生成xml文件:

          <example index="123">
          <text>Example message</text>
          </example>
          


          xml-->bean:
          測試代碼:
          Serializer serializer = new Persister();
          File source = new File("example.xml");

          Example example = serializer.read(Example.class, source);



          評論

          # re: objectXML之simple[未登錄]  回復  更多評論   

          2010-01-29 17:39 by 毛掌柜
          JDK自帶有JAXB,盡量使用的標準的東西較好。

          # re: objectXML之simple  回復  更多評論   

          2010-01-29 18:07 by 咖啡妝
          @毛掌柜
          契約優先何其難!!

          # re: objectXML之simple  回復  更多評論   

          2013-05-22 15:57 by 開發吧
          請問,我反序列化報錯,我只需要部分數據反序列化,怎么辦?
          主站蜘蛛池模板: 山阴县| 红安县| 萨嘎县| 金秀| 南漳县| 建平县| 湾仔区| 鹤壁市| 定边县| 大埔区| 佛学| 万荣县| 罗田县| 沭阳县| 正蓝旗| 澎湖县| 灵台县| 千阳县| 津市市| 大城县| 永昌县| 潜山县| 库伦旗| 西宁市| 常熟市| 吴旗县| 商河县| 平定县| 安乡县| 交城县| 保靖县| 遵化市| 霍邱县| 广州市| 潼南县| 延川县| 石泉县| 离岛区| 大理市| 石河子市| 明水县|