This tutorial will demonstrate how can you generate Java Objects from XML documents using xjc tool. The tool “xjc” is used to generate the annotated Java classes from the XSD schema
Suppose I am using below XML file to generate Java Objects i,e
Lets use the 'xjc" tool to generate corresponding Java classes
Please let me know your feedback/queries as comments.
Suppose I am using below XML file to generate Java Objects i,e
<?xml version="1.0" encoding="UTF-8"?>Now to generate Java Objects we need to create one xsd file(say "connection.xsd") :
<adaptorapp id="application">
<instance id="instance1">
<connectiondetails>
<accesskey>abcde</accesskey>
<secretkey>fghij</secretkey>
</connectiondetails>
</instance>
<instance id="instance2">
<connectiondetails>
<accesskey>klmnop</accesskey>
<secretkey>qrstuvwxyz</secretkey>
</connectiondetails>
</instance>
</adaptorapp>
<?xml version="1.0"?>I have written XSD Schema based on my XML file, You can write something similar according to your requirement.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="adaptorapp" type="AdaptopApp" />
<xs:complexType name="AdaptopApp">
<xs:sequence>
<xs:element name="instance" type="Instance" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="Instance">
<xs:sequence>
<xs:element name="connectiondetail" type="ConnectionDetail" />
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="ConnectionDetail">
<xs:sequence>
<xs:element name="accesskey" type="xs:string" />
<xs:element name="secretkey" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:schema>
Lets use the 'xjc" tool to generate corresponding Java classes
xjc.exe connection.xsdBy default, It will generates the Java classes in a directory named "generated".
Please let me know your feedback/queries as comments.