XStream將XML轉換為JAVA對象快速指南

來源:互聯網
上載者:User

標籤:xstream   xml   xstream教程   

XStream是一套簡單實用的JAVA類庫,它用於序列化對象和XML對象之間互相轉換。由於XStream配置簡單,靈活易用,因此在XML對象和JAVA對象序列化市場上有很大的空間。本文並不會對XStream的特性做詳細介紹,只是以執行個體的方式示範XStream是多麼的容易上手。


1.XStream官網下載最新版的Jar包,上傳到工程路徑。


2.假設我們要將如下的XML對象轉換為JAVA對象。

<?xml version="1.0" encoding="UTF-8"?><order>    <orderId>201612150001</orderId>    <orderPrice>40.23</orderPrice>    <createDate>20161215180000</createDate>    <product>        <productName>lvrouhuoshao</productName>        <productPrice>23</productPrice>    </product>    <product>        <productName>雞蛋灌餅</productName>        <productPrice>17.23</productPrice>    </product></order>


3.根據XML結構構建訂單對象和產品對象


HiOrder.java

package com.favccxx.favsoft.pojo;import java.util.List;public class HiOrder {    private String orderId;    private double orderPrice;    private List<HiProduct> product;    private String createDate;    public String getOrderId() {        return orderId;    }    public void setOrderId(String orderId) {        this.orderId = orderId;    }    public double getOrderPrice() {        return orderPrice;    }    public void setOrderPrice(double orderPrice) {        this.orderPrice = orderPrice;    }    public List<HiProduct> getProduct() {        return product;    }    public void setProduct(List<HiProduct> product) {        this.product = product;    }    public String getCreateDate() {        return createDate;    }    public void setCreateDate(String createDate) {        this.createDate = createDate;    }}


Product.java

package com.favccxx.favsoft.pojo;public class HiProduct {    private String productName;    private double productPrice;    public String getProductName() {        return productName;    }    public void setProductName(String productName) {        this.productName = productName;    }    public double getProductPrice() {        return productPrice;    }    public void setProductPrice(double productPrice) {        this.productPrice = productPrice;    }}


4.測試代碼

package com.favccxx.favsoft.main;import com.favccxx.favsoft.pojo.HiOrder;import com.favccxx.favsoft.pojo.HiProduct;import com.thoughtworks.xstream.XStream;public class MainOrder {    public static void main(String[] args) {        String xmlbody = "<?xml version=‘1.0‘ encoding=‘UTF-8‘?><order><orderId>201612150001</orderId><orderPrice>40.23</orderPrice><createDate>2016-12-12 15:16:04</createDate><product><productName>lvrouhuoshao</productName><productPrice>23</productPrice></product><product><productName>雞蛋灌餅</productName><productPrice>17.23</productPrice></product></order>";        XStream xStream = new XStream();        xStream.alias("order", HiOrder.class);        xStream.alias("product", HiProduct.class);        xStream.addImplicitCollection(HiOrder.class, "product");        HiOrder order = (HiOrder) xStream.fromXML(xmlbody);        System.out.println(order.getOrderId());    }}


5.運行上面測試類別,輸出訂單的詳細資料。只需簡單的幾步就可以將XML對象轉換為JAVA對象,你看到這,是不是心癢的想要上手試一試呢?



本文出自 “這個人的IT世界” 部落格,請務必保留此出處http://favccxx.blog.51cto.com/2890523/1884453

XStream將XML轉換為JAVA對象快速指南

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.