Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
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 (322)
Collections:
Other Resources:
MyXmlToUser.java - Unmarshal XML File to Data Object to
How to unmarshal XML files to data objects using JAXB API?
✍: FYIcenter.com
If you want to unmarshal xml files to data objects using JAXB API,
you can follow these suggestions:
1. Create a JAXBContext instance with the package name of the data type classes generated with the JAXB XJC tool:
JAXBContext c = JAXBContext.newInstance("com.fyicenter.demo");
2. Then create an Unmarshaller instance from the JAXBContext:
Unmarshaller m = c.createUnmarshaller();
3. Finally, unmarshal the XML file to a data object with the Unmarshaller:
User u = (User) m.unmarshal(new FileInputStream("User.xml"));
Here is the entire example program, MyXmlToUser.java:
// Copyright (c) FYIcenter.com
import com.fyicenter.demo.User;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;
import java.io.*;
public class MyXmlToUser {
public static void main(String[] args) throws Exception {
String x = "User.xml";
if (args.length < 1) {
System.out.println("USAGE: java MyXmlToUser xml");
System.exit(-1);
}
x = args[0];
System.out.println("Unmarshal XML file to user object...");
JAXBContext c = JAXBContext.newInstance("com.fyicenter.demo");
Unmarshaller m = c.createUnmarshaller();
User u = (User) m.unmarshal(new FileInputStream(x));
System.out.println("My user object:");
System.out.println(" Name: "+u.getName());
System.out.println(" BirthDate: "+u.getBirthDate());
System.out.println(" Sex: "+u.getSex());
System.out.println(" ID: "+u.getID());
}
}
Compile and run MyXmlToUser.java as shown below.
fyicenter$ cd src fyicenter> java -cp .:../jaxb-ri/mod/jaxb-api.jar:\ ../jaxb-ri/mod/jaxb-runtime.jar:\ ../jaxb-ri/mod/istack-commons-runtime.jar:\ ../jaxb-ri/mod/javax.activation-api.jar \ MyXmlToUser.java UserOutput.xml Unmarshal XML file to user object... My user object: Name: Frank Y. Ivy BirthDate: 1970-01-01+00:01 Sex: Male ID: 101
If you are still using Java 8, the test also works.
fyicenter> \local\jdk-1.8.0\bin\javac MyXmlToUser.java fyicenter> \local\jdk-1.8.0\bin\java MyXmlToUser UserOutput.xml Unmarshal XML file to user object... My user object: Name: Frank Y. Ivy BirthDate: 1970-01-01+00:01 Sex: Male ID: 101
⇒ Unmarshaller with No Default Data Validation
⇐ MyUserToXml.java - Marshal Data Object to XML File
2017-06-30, ∼2161🔥, 0💬
Popular Posts:
What is the dom\GetElementsByTagName .javaprovided in the Apache Xerces package? I have Apache Xerce...
How to download and install JDK (Java Development Kit) 5? If you want to write Java applications, yo...
What Is ojdbc5.jar for Oracle 11g R1? ojdbc5.jar for Oracle 11g R1 is the JAR files of ojdbc.jar, JD...
xml-commons Resolver Source Code Files are provided in the source package file, xml-commons-resolver...
Where to get the Java source code for Connector/J 8.0 Core API module? Java source code files for Co...