標籤: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對象快速指南