{"id":8918,"date":"2013-02-22T13:00:30","date_gmt":"2013-02-22T11:00:30","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?p=8918"},"modified":"2015-01-05T23:25:55","modified_gmt":"2015-01-05T21:25:55","slug":"jaxb-tutorial-getting-started","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html","title":{"rendered":"JAXB tutorial &#8211; Getting Started"},"content":{"rendered":"<p><em><strong>Note:<\/strong> Check out our <a href=\"http:\/\/www.javacodegeeks.com\/2014\/12\/jaxb-tutorial-xml-binding.html\">JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide<\/a><\/em><\/p>\n<h2>What is JAXB?<\/h2>\n<p>JAXB stands for Java architecture for XML binding.It is used to convert XML to java object and java object to XML.JAXB defines an API for reading and writing Java objects to and from XML documents.Unlike SAX and DOM,we don&#8217;t need to be aware of XML parsing techniques.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/JAXBArchitecture.gif\"><img decoding=\"async\" class=\"aligncenter\" style=\"border: 0px none;\" alt=\"\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/JAXBArchitecture.gif\" width=\"400\" height=\"75\" border=\"0\" \/><\/a><\/p>\n<p>&nbsp;<br \/>\nThere are two operations you can perform using JAXB<\/p>\n<ol>\n<li><b>Marshalling<\/b> :Converting a java object to XML<\/li>\n<li><b>UnMarshalling <\/b>:Converting a XML to java object<\/li>\n<\/ol>\n<h2> JAXB Tutorial<\/h2>\n<p>We will create a java program to marshal and unmarshal.<\/p>\n<h4> For Marshalling:<\/h4>\n<p style=\"text-align: center;\"><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/MarshalJavaToXml.jpg\"><img decoding=\"async\" class=\"aligncenter\" style=\"border: 0px none;\" alt=\"\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/MarshalJavaToXml.jpg\" width=\"518\" height=\"272\" border=\"0\" \/><\/a><\/p>\n<h4> For Unmarshalling:<\/h4>\n<p style=\"text-align: center;\"><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/UnmarshallXMLToJava.jpg\"><img decoding=\"async\" class=\"aligncenter\" style=\"border: 0px none;\" alt=\"\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/02\/UnmarshallXMLToJava.jpg\" width=\"516\" height=\"274\" border=\"0\" \/><\/a><\/p>\n<h2> Java program:<\/h2>\n<p>With the help of annotations and API provided by JAXB,converting a java object to XML and vice versa become very easy.<\/p>\n<h2> 1.Country.java<\/h2>\n<p>A Java object which will be used to convert to and from XML<\/p>\n<p>Create Country.java in src-&gt;org.arpit.javapostsforlearning.jaxb<\/p>\n<pre class=\" brush:java\">package org.arpit.javapostsforlearning.jaxb;\r\n\r\nimport java.util.ArrayList;\r\n\r\nimport javax.xml.bind.annotation.XmlElement;\r\nimport javax.xml.bind.annotation.XmlElementWrapper;\r\nimport javax.xml.bind.annotation.XmlRootElement;\r\nimport javax.xml.bind.annotation.XmlType;\r\n\r\n\/\/Below annotation defines root element of XML file\r\n@XmlRootElement\r\n\/\/You can define order in which elements will be created in XML file\r\n\/\/Optional\r\n@XmlType(propOrder = { 'countryName', 'countryPopulation', 'listOfStates'})\r\npublic class Country {\r\n\r\n private String countryName;\r\n private double countryPopulation;\r\n\r\n private ArrayList&lt;state&gt; listOfStates;\r\n public Country() {\r\n\r\n }\r\n public String getCountryName() {\r\n  return countryName;\r\n }\r\n @XmlElement\r\n public void setCountryName(String countryName) {\r\n  this.countryName = countryName;\r\n }\r\n public double getCountryPopulation() {\r\n  return countryPopulation;\r\n }\r\n\r\n @XmlElement\r\n public void setCountryPopulation(double countryPopulation) {\r\n  this.countryPopulation = countryPopulation;\r\n }\r\n\r\n public ArrayList&lt;state&gt; getListOfStates() {\r\n  return listOfStates;\r\n }\r\n\r\n \/\/ XmLElementWrapper generates a wrapper element around XML representation\r\n   @XmlElementWrapper(name = 'stateList')\r\n  \/\/ XmlElement sets the name of the entities in collection\r\n   @XmlElement(name = 'state')\r\n public void setListOfStates(ArrayList&lt;state&gt; listOfStates) {\r\n  this.listOfStates = listOfStates;\r\n }\r\n\r\n}<\/pre>\n<p><b>@XmlRootElement:<\/b>This annotation defines root element of XML file.<br \/>\n<b>@XmlType(propOrder = {&#8216;list of attributes in order&#8217;})<\/b>:This is used to define order of elements in XML file.This is optional.<br \/>\n<b>@XmlElement:<\/b>This is used to define element in XML file.It sets name of entity.<br \/>\n<b>@XmlElementWrapper(name = &#8216;name to be given to that wrapper&#8217;):<\/b>It generates a wrapper element around XML representation.E.g.In above example, it will generate &lt;stateList&gt;<br \/>\naround each &lt;state&gt; element<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<h2> 2.State.java <\/h2>\n<pre class=\" brush:java\">package org.arpit.javapostsforlearning.jaxb;\r\n\r\nimport javax.xml.bind.annotation.XmlRootElement;\r\n\r\n\/\/Below statement means that class 'Country.java' is the root-element of our example\r\n@XmlRootElement(namespace = 'org.arpit.javapostsforlearning.jaxb.Country')\r\npublic class State {\r\n\r\n private String stateName;\r\n long statePopulation;\r\n\r\n public State()\r\n {\r\n\r\n }\r\n public State(String stateName, long statePopulation) {\r\n  super();\r\n  this.stateName = stateName;\r\n  this.statePopulation = statePopulation;\r\n }\r\n\r\n public String getStateName() {\r\n  return stateName;\r\n }\r\n\r\n public void setStateName(String stateName) {\r\n  this.stateName = stateName;\r\n }\r\n\r\n public long getStatePopulation() {\r\n  return statePopulation;\r\n }\r\n\r\n public void setStatePopulation(long statePopulation) {\r\n  this.statePopulation = statePopulation;\r\n }\r\n}<\/pre>\n<h2>3.JAXBJavaToXml.java <\/h2>\n<pre class=\" brush:java\">package org.arpit.javapostsforlearning.jaxb;\r\n\r\nimport java.io.File;\r\nimport java.util.ArrayList;\r\n\r\nimport javax.xml.bind.JAXBContext;\r\nimport javax.xml.bind.JAXBException;\r\nimport javax.xml.bind.Marshaller;\r\n\r\npublic class JAXBJavaToXml {\r\n public static void main(String[] args) {\r\n\r\n  \/\/ creating country object\r\n   Country countryIndia=new Country();  \r\n   countryIndia.setCountryName('India');\r\n   countryIndia.setCountryPopulation(5000000);\r\n\r\n   \/\/ Creating listOfStates\r\n   ArrayList&lt;state&gt; stateList=new ArrayList&lt;state&gt;();\r\n   State mpState=new State('Madhya Pradesh',1000000);\r\n   stateList.add(mpState);\r\n   State maharastraState=new State('Maharastra',2000000);\r\n   stateList.add(maharastraState);\r\n\r\n   countryIndia.setListOfStates(stateList);\r\n\r\n  try {\r\n\r\n   \/\/ create JAXB context and initializing Marshaller\r\n   JAXBContext jaxbContext = JAXBContext.newInstance(Country.class);\r\n   Marshaller jaxbMarshaller = jaxbContext.createMarshaller();\r\n\r\n   \/\/ for getting nice formatted output\r\n   jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);\r\n\r\n   \/\/specify the location and name of xml file to be created\r\n   File XMLfile = new File('C:\\\\arpit\\\\CountryRecord.xml');\r\n\r\n   \/\/ Writing to XML file\r\n   jaxbMarshaller.marshal(countryIndia, XMLfile); \r\n   \/\/ Writing to console\r\n   jaxbMarshaller.marshal(countryIndia, System.out); \r\n\r\n  } catch (JAXBException e) {\r\n   \/\/ some exception occured\r\n   e.printStackTrace();\r\n  }\r\n\r\n }\r\n}<\/pre>\n<p>After running above program,you will get following output<\/p>\n<h4>Console output:<\/h4>\n<pre class=\" brush:java\">&lt;?xml version='1.0' encoding='UTF-8' standalone='yes'?&gt;\r\n&lt;country xmlns:ns2='org.arpit.javapostsforlearning.jaxb.Country'&gt;\r\n    &lt;countryName&gt;India&lt;\/countryName&gt;\r\n    &lt;countryPopulation&gt;5000000.0&lt;\/countryPopulation&gt;\r\n    &lt;stateList&gt;\r\n        &lt;state&gt;\r\n            &lt;stateName&gt;Madhya Pradesh&lt;\/stateName&gt;\r\n            &lt;statePopulation&gt;1000000&lt;\/statePopulation&gt;\r\n        &lt;\/state&gt;\r\n        &lt;state&gt;\r\n            &lt;stateName&gt;Maharastra&lt;\/stateName&gt;\r\n            &lt;statePopulation&gt;2000000&lt;\/statePopulation&gt;\r\n        &lt;\/state&gt;\r\n    &lt;\/stateList&gt;\r\n&lt;\/country&gt;<\/pre>\n<p>Now we will read above generated XML and retrieve country object from it.<\/p>\n<h2> 4.JAXBXMLToJava.java <\/h2>\n<pre class=\" brush:java\">package org.arpit.javapostsforlearning.jaxb;\r\n\r\nimport java.io.File;\r\nimport java.util.ArrayList;\r\nimport javax.xml.bind.JAXBContext;\r\nimport javax.xml.bind.JAXBException;\r\nimport javax.xml.bind.Unmarshaller;\r\n\r\npublic class JAXBXMLToJava {\r\n public static void main(String[] args) {\r\n\r\n  try {\r\n\r\n   \/\/ create JAXB context and initializing Marshaller\r\n   JAXBContext jaxbContext = JAXBContext.newInstance(Country.class);\r\n\r\n   Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();\r\n\r\n   \/\/ specify the location and name of xml file to be read\r\n   File XMLfile = new File('C:\\\\arpit\\\\CountryRecord.xml');\r\n\r\n   \/\/ this will create Java object - country from the XML file\r\n   Country countryIndia = (Country) jaxbUnmarshaller.unmarshal(XMLfile);\r\n\r\n   System.out.println('Country Name: '+countryIndia.getCountryName());\r\n   System.out.println('Country Population: '+countryIndia.getCountryPopulation());\r\n\r\n   ArrayList&lt;state&gt; listOfStates=countryIndia.getListOfStates();\r\n\r\n   int i=0; \r\n   for(State state:listOfStates)\r\n   {\r\n    i++;\r\n    System.out.println('State:'+i+' '+state.getStateName());\r\n   }\r\n\r\n  } catch (JAXBException e) {\r\n   \/\/ some exception occured\r\n   e.printStackTrace();\r\n  }\r\n\r\n }\r\n}<\/pre>\n<p>After running above program,you will get following output:<\/p>\n<h4> Console output: <\/h4>\n<pre class=\" brush:java\">Country Name: India\r\nCountry Population: 5000000.0\r\nState:1 Madhya Pradesh\r\nState:2 Maharastra<\/pre>\n<h4> JAXB advantages: <\/h4>\n<ul>\n<li>It is very simple to use than DOM or SAX parser<\/li>\n<li>We can marshal XML file to other data targets like inputStream,URL,DOM node.<\/li>\n<li>We can unmarshal XML file from other data targets.<\/li>\n<li>We don&#8217;t need to be aware of XML parsing techniques.<\/li>\n<li>We don&#8217;t need to access XML in tree structure always.<\/li>\n<\/ul>\n<h4> JAXB disadvantages:<\/h4>\n<ul>\n<li>JAXB is high layer API so it has less control on parsing than SAX or DOM.<\/li>\n<li>It has some overhead tasks so it is slower than SAX.<\/li>\n<\/ul>\n<h4> Source code:<\/h4>\n<p><a href=\"https:\/\/dl.dropbox.com\/s\/fdlmadum7nb9xao\/JAXBTutorialExample.zip\" target=\"_blank\">Download<\/a><br \/>\n&nbsp;<\/p>\n<p><b><i>Reference: <\/i><\/b><a href=\"http:\/\/javapostsforlearning.blogspot.in\/2013\/02\/jaxb-tutorial.html\">JAXB tutorial &#8211; Getting Started<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/p\/jcg.html\">JCG partner<\/a> Arpit Mandliya at the <a href=\"http:\/\/javapostsforlearning.blogspot.in\/\">Java frameworks and design patterns for beginners<\/a> blog.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to convert XML to java object and java object to XML.JAXB defines an API for reading and writing Java objects to and from XML documents.Unlike SAX and DOM,we &hellip;<\/p>\n","protected":false},"author":355,"featured_media":112,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[144,107],"class_list":["post-8918","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-jaxb","tag-xml"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JAXB tutorial - Getting Started<\/title>\n<meta name=\"description\" content=\"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JAXB tutorial - Getting Started\" \/>\n<meta property=\"og:description\" content=\"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2013-02-22T11:00:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2015-01-05T21:25:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Arpit Mandliya\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Arpit Mandliya\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html\"},\"author\":{\"name\":\"Arpit Mandliya\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/f75a08bfd66c98205aee4de978446e17\"},\"headline\":\"JAXB tutorial &#8211; Getting Started\",\"datePublished\":\"2013-02-22T11:00:30+00:00\",\"dateModified\":\"2015-01-05T21:25:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html\"},\"wordCount\":395,\"commentCount\":14,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"keywords\":[\"JAXB\",\"XML\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html\",\"name\":\"JAXB tutorial - Getting Started\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"datePublished\":\"2013-02-22T11:00:30+00:00\",\"dateModified\":\"2015-01-05T21:25:55+00:00\",\"description\":\"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"width\":150,\"height\":150,\"caption\":\"java-interview-questions-answers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/02\\\/jaxb-tutorial-getting-started.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"JAXB tutorial &#8211; Getting Started\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/f75a08bfd66c98205aee4de978446e17\",\"name\":\"Arpit Mandliya\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g\",\"caption\":\"Arpit Mandliya\"},\"description\":\"I am java developer at Tata Consultancy Services Ltd. My current area of interest are J2EE,web development and java design patterns. I am technology enthusiast trying to explore new technologies. In spare time,I love blogging.\",\"sameAs\":[\"http:\\\/\\\/javapostsforlearning.blogspot.in\\\/\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/arpit-mandliya\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JAXB tutorial - Getting Started","description":"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html","og_locale":"en_US","og_type":"article","og_title":"JAXB tutorial - Getting Started","og_description":"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to","og_url":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2013-02-22T11:00:30+00:00","article_modified_time":"2015-01-05T21:25:55+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","type":"image\/jpeg"}],"author":"Arpit Mandliya","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Arpit Mandliya","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html"},"author":{"name":"Arpit Mandliya","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/f75a08bfd66c98205aee4de978446e17"},"headline":"JAXB tutorial &#8211; Getting Started","datePublished":"2013-02-22T11:00:30+00:00","dateModified":"2015-01-05T21:25:55+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html"},"wordCount":395,"commentCount":14,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","keywords":["JAXB","XML"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html","url":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html","name":"JAXB tutorial - Getting Started","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","datePublished":"2013-02-22T11:00:30+00:00","dateModified":"2015-01-05T21:25:55+00:00","description":"Note: Check out our JAXB Tutorial for Java XML Binding \u2013 The ULTIMATE Guide What is JAXB? JAXB stands for Java architecture for XML binding.It is used to","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","width":150,"height":150,"caption":"java-interview-questions-answers"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/2013\/02\/jaxb-tutorial-getting-started.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"JAXB tutorial &#8211; Getting Started"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/f75a08bfd66c98205aee4de978446e17","name":"Arpit Mandliya","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9d372b59df7fe155d92edc19183d3beca7c34180846687eea4c1f21663001e29?s=96&d=mm&r=g","caption":"Arpit Mandliya"},"description":"I am java developer at Tata Consultancy Services Ltd. My current area of interest are J2EE,web development and java design patterns. I am technology enthusiast trying to explore new technologies. In spare time,I love blogging.","sameAs":["http:\/\/javapostsforlearning.blogspot.in\/"],"url":"https:\/\/www.javacodegeeks.com\/author\/arpit-mandliya"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/8918","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/355"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=8918"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/8918\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/112"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=8918"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=8918"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=8918"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}