JAVA使用simpleframework简单的解析XML文件

来源:互联网 发布:电信短信群发软件 编辑:程序博客网 时间:2024/06/02 18:00

  解析XML在项目中是经常需要使用到的,今天在这里为大家介绍怎么用simpleframework解析XML文件

  需要一个架包 simple-xml.2.7.1.jar  (如果没有该架包的同学可以上网自行搜索下载)

  解析该xml文件为例

?xml version="1.0" encoding="UTF-8"?><items><totalResults>1</totalResults><totalResultsAll>1</totalResultsAll><Rows><productCategory>14664</productCategory><sortName>针织衫</sortName><productBrand>999999</productBrand><BrandName>ESP</BrandName><productID>AE050</productID><productName>女装EDC针织衫</productName><color/><sizeNo/><saleNum>0.000</saleNum></Rows><Rows><productCategory>14662</productCategory><sortName>针织衫1</sortName><productBrand>9999990</productBrand><BrandName>ESP0</BrandName><productID>AE0501</productID><productName>女装EDC针织衫1</productName><color>红色</color><sizeNo>中</sizeNo><saleNum>0.000</saleNum></Rows></items>

接下来我们需要编写我们的XML映射实体类

Items.java

import java.util.List;import org.simpleframework.xml.Element;import org.simpleframework.xml.Root;@Root(name = "items")public class Items {@Element(name = "totalResults", required = false)private String totalResults;@Element(name = "totalResultsAll", required = false)private String totalResultsAll;@Element(name = "Rows", required = false)private List<Rows> rows;public String getTotalResults() {return totalResults;}public void setTotalResults(String totalResults) {this.totalResults = totalResults;}public String getTotalResultsAll() {return totalResultsAll;}public void setTotalResultsAll(String totalResultsAll) {this.totalResultsAll = totalResultsAll;}public List<Rows> getRows() {return rows;}public void setRows(List<Rows> rows) {this.rows = rows;}}

Rows.java

import org.simpleframework.xml.Element;import org.simpleframework.xml.Root;@Root(name = "Rows")public class Rows {@Element(name = "productCategory", required = false)private String productCategory;@Element(name = "sortName", required = false)private String sortName;@Element(name = "productBrand", required = false)private String productBrand;@Element(name = "productID", required = false)private String productID;@Element(name = "productName", required = false)private String productName;@Element(name = "color", required = false)private String color;@Element(name = "sizeNo", required = false)private String sizeNo;@Element(name = "saleNum", required = false)private String saleNum;public String getProductCategory() {return productCategory;}public void setProductCategory(String productCategory) {this.productCategory = productCategory;}public String getSortName() {return sortName;}public void setSortName(String sortName) {this.sortName = sortName;}public String getProductBrand() {return productBrand;}public void setProductBrand(String productBrand) {this.productBrand = productBrand;}public String getProductID() {return productID;}public void setProductID(String productID) {this.productID = productID;}public String getProductName() {return productName;}public void setProductName(String productName) {this.productName = productName;}public String getColor() {return color;}public void setColor(String color) {this.color = color;}public String getSizeNo() {return sizeNo;}public void setSizeNo(String sizeNo) {this.sizeNo = sizeNo;}public String getSaleNum() {return saleNum;}public void setSaleNum(String saleNum) {this.saleNum = saleNum;}}

测试类

public static void main(String[] args) {Format format = new Format("<?xml version=\"1.0\" encoding= \"UTF-8\" ?>");Serializer serializer = new Persister(format);Items resultModel = null; // xml映射实体类resultModel = serializer.read(Items.class, "xml字符串文件");resultModel.getRows();resultModel.getTotalResults();resultModel.getTotalResultsAll();}




0 0
原创粉丝点击