Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
EasyPoXmlParser.java - Parse XML to Java Objects
How to write Java program to parse XML document to Java data type objects using XMLBeans? I have the XML Schema compiled as Java data types.
✍: FYIcenter.com
If you have your XML schema compiled as Java data types,
you can following these suggestions to write a Java program
to parse an XML document into Java data objects:
1. Use the Factory sub class generated from the "scomp" tool or the SchemaCompiler class code to parse the XML document:
PurchaseOrderDocument poDoc = PurchaseOrderDocument.Factory.parse(new File("easypo.xml"));
2. Use get*() methods to retrieve objects representing complex elements from the XML document. Use get*Array() methods for repeating elements.
PurchaseOrderDocument.PurchaseOrder po = poDoc.getPurchaseOrder(); Customer c = po.getCustomer(); LineItem[] l = po.getLineItemArray();
3. Use get*() methods to retrieve primitive value or special objects representing simple elements from the XML document:
Customer c = po.getCustomer(); String n = c.getName(); String a = c.getAddress(); Calendar d = po.getDate();
Below is the entire sample Java program that parses an XML document into objects of data type classes generated by XMLBeans:
// Copyright (c) FYIcenter.com import java.io.File; import java.util.Calendar ; import org.apache.xmlbeans.*; import org.openuri.easypo.PurchaseOrderDocument; import org.openuri.easypo.Customer; import org.openuri.easypo.LineItem; import org.openuri.easypo.Shipper; public class EasyPoXmlParser { public static void main(String[] args) throws Exception { // Bind the incoming XML to an XMLBeans type. PurchaseOrderDocument poDoc = PurchaseOrderDocument.Factory.parse(new File("easypo.xml")); PurchaseOrderDocument.PurchaseOrder po = poDoc.getPurchaseOrder(); Customer c = po.getCustomer(); String n = c.getName(); String a = c.getAddress(); Calendar d = po.getDate(); LineItem[] l = po.getLineItemArray(); Shipper s = po.getShipper(); System.out.println("\r\nCustomer name: \r\n"+n); System.out.println("\r\nCustomer address: \r\n"+a); System.out.println("\r\nDate: \r\n"+d.toString()); System.out.println("\r\n1st LineItem: \r\n"+l[0].toString()); System.out.println("\r\nShiper: \r\n"+s.toString()); } }
Compile and run it with Java SE 8 JDK:
\fyicenter\xmlbeans-2.6.0>\fyicenter\jdk-1.8.0\bin\javac -cp .\lib\xbean.jar;easypo.jar EasyPoXmlParser.java \fyicenter\xmlbeans-2.6.0>\fyicenter\jdk-1.8.0\bin\java -cp .;.\lib\xbean.jar;easypo.jar EasyPoXmlParser Customer name: Gladys Kravitz Customer address: Anytown, PA Date: 2003-01-07T14:16:00-05:00 1st LineItem: <xml-fragment xmlns:eas="http://openuri.org/easypo"> <eas:description>Burnham's Celestial Handbook, Vol 1</eas:description> <eas:per-unit-ounces>5</eas:per-unit-ounces> <eas:price>21.79</eas:price> <eas:quantity>2</eas:quantity> </xml-fragment> Shiper: <xml-fragment xmlns:eas="http://openuri.org/easypo"> <eas:name>ZipShip</eas:name> <eas:per-ounce-rate>0.74</eas:per-ounce-rate> </xml-fragment>
⇒ EasyPoXmlGenerator.java - Generate XML from Java Objects
⇐ easypo.xml - Purchase Order Test XML Document
2017-07-07, 1747🔥, 0💬
Popular Posts:
What Is jtds-1.2.2.jar? jtds-1.2.2.jar is the JAR files of jTDS Java library 1.2.2, which is a JDBC ...
JDK 11 jdk.javadoc.jmod is the JMOD file for JDK 11 Java Document tool, which can be invoked by the ...
What Is javamail-1_2.zip? javamail-1_2.zip is the binary package of JavaMail API 1.2 in ZIP format. ...
JDK 17 java.base.jmod is the JMOD file for JDK 17 Base module. JDK 17 Base module compiled class fil...
JDK 11 jdk.xml.dom.jmod is the JMOD file for JDK 11 XML DOM module. JDK 11 XML DOM module compiled c...