<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FXML%2FJAXB</id>
		<title>Java Tutorial/XML/JAXB - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_Tutorial%2FXML%2FJAXB"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/XML/JAXB&amp;action=history"/>
		<updated>2026-04-18T20:25:13Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/XML/JAXB&amp;diff=5102&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/XML/JAXB&amp;diff=5102&amp;oldid=prev"/>
				<updated>2010-06-01T05:17:47Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 05:17, 1 июня 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_Tutorial/XML/JAXB&amp;diff=5101&amp;oldid=prev</id>
		<title> в 17:44, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_Tutorial/XML/JAXB&amp;diff=5101&amp;oldid=prev"/>
				<updated>2010-05-31T17:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==  Marshal Java object to a file ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import javax.xml.bind.JAXBContext;&lt;br /&gt;
import javax.xml.bind.Marshaller;&lt;br /&gt;
import javax.xml.bind.annotation.XmlRootElement;&lt;br /&gt;
public class JavaToXMLDemo {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    JAXBContext context = JAXBContext.newInstance(Employee.class);&lt;br /&gt;
    Marshaller m = context.createMarshaller();&lt;br /&gt;
    m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);&lt;br /&gt;
    Employee object = new Employee();&lt;br /&gt;
    object.setCode(&amp;quot;CA&amp;quot;);&lt;br /&gt;
    object.setName(&amp;quot;Cath&amp;quot;);&lt;br /&gt;
    object.setSalary(300);&lt;br /&gt;
    m.marshal(object, new FileOutputStream(&amp;quot;result.xml&amp;quot;));&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
@XmlRootElement&lt;br /&gt;
class Employee {&lt;br /&gt;
  private String code;&lt;br /&gt;
  private String name;&lt;br /&gt;
  private int salary;&lt;br /&gt;
  public String getCode() {&lt;br /&gt;
    return code;&lt;br /&gt;
  }&lt;br /&gt;
  public void setCode(String code) {&lt;br /&gt;
    this.code = code;&lt;br /&gt;
  }&lt;br /&gt;
  public String getName() {&lt;br /&gt;
    return name;&lt;br /&gt;
  }&lt;br /&gt;
  public void setName(String name) {&lt;br /&gt;
    this.name = name;&lt;br /&gt;
  }&lt;br /&gt;
  public int getSalary() {&lt;br /&gt;
    return salary;&lt;br /&gt;
  }&lt;br /&gt;
  public void setSalary(int population) {&lt;br /&gt;
    this.salary = population;&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  Marshal Java object to xml and output to console ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
import java.io.FileOutputStream;&lt;br /&gt;
import javax.xml.bind.JAXBContext;&lt;br /&gt;
import javax.xml.bind.Marshaller;&lt;br /&gt;
import javax.xml.bind.annotation.XmlRootElement;&lt;br /&gt;
public class JavaToXMLDemo {&lt;br /&gt;
  public static void main(String[] args) throws Exception {&lt;br /&gt;
    JAXBContext context = JAXBContext.newInstance(Employee.class);&lt;br /&gt;
    Marshaller m = context.createMarshaller();&lt;br /&gt;
    m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);&lt;br /&gt;
    Employee object = new Employee();&lt;br /&gt;
    object.setCode(&amp;quot;CA&amp;quot;);&lt;br /&gt;
    object.setName(&amp;quot;Cath&amp;quot;);&lt;br /&gt;
    object.setSalary(300);&lt;br /&gt;
    m.marshal(object, System.out);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
@XmlRootElement&lt;br /&gt;
class Employee {&lt;br /&gt;
  private String code;&lt;br /&gt;
  private String name;&lt;br /&gt;
  private int salary;&lt;br /&gt;
  public String getCode() {&lt;br /&gt;
    return code;&lt;br /&gt;
  }&lt;br /&gt;
  public void setCode(String code) {&lt;br /&gt;
    this.code = code;&lt;br /&gt;
  }&lt;br /&gt;
  public String getName() {&lt;br /&gt;
    return name;&lt;br /&gt;
  }&lt;br /&gt;
  public void setName(String name) {&lt;br /&gt;
    this.name = name;&lt;br /&gt;
  }&lt;br /&gt;
  public int getSalary() {&lt;br /&gt;
    return salary;&lt;br /&gt;
  }&lt;br /&gt;
  public void setSalary(int population) {&lt;br /&gt;
    this.salary = population;&lt;br /&gt;
  }&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  The xjc Tool ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;The xjc tool accepts an XML schema and generates Java classes.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The generated classes contain properties mapped to the XML elements and attributes defined in the schema.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The xjc tool is a part of the Java API for XML Binding (JAXB) API.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The syntax to use the xjc tool is:&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
xjc [-options ...] &amp;lt;schema_file/URL/dir&amp;gt; ... [-b &amp;lt;bindinfo&amp;gt;] ...&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
OptionDescription-extensionAllows vendor extensions.-b &amp;lt;file&amp;gt;Specifies external binding files.-d &amp;lt;dir&amp;gt;Specifies the directory to store generated files.-p &amp;lt;pkg&amp;gt;Specifies the target package.-classpath &amp;lt;arg&amp;gt;Specifies where to find user class files.-quietSuppresses compiler output.-helpDisplays help information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==  XMLSchema Mapping Annotations ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;OL&amp;gt;&amp;lt;LI&amp;gt;XmlAccessorOrder controls ordering of fields and properties for a class&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlAccessorType is used in conjunction with the XmlAccessType Enum to indicate if a field or property should be serialized&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlAnyAttribute acts as a map of wildcard attributes for java.util.Map properties or fields&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlAnyElement serves to identify the catchall property during unmarshalling&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlAttachmentRef identifies mime types and URIs for external content&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlAttribute renames of a JavaBeans property to/from an XML attribute&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElement maps a JavaBeans property to a complex type&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElementDecl links an object factory to an XML element&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElementRef links a JavaBeans property to an XML element derived from the property&amp;quot;s type&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElementRefs marks a property that refers to classes with @XmlElement&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElements is a container for multiple @XmlElement annotations&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlElementWrapper generates a wrapper element for XML representation&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlEnum maps an Enum to an XML representation&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlEnumValue identifies an enumerated constant&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlID maps a property to an XML ID&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlIDREF maps a property to an XML IDREF&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlInlineBinaryData causes XOP encoding to be disabled for binary data types, such as Image&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlList maps a property to a list&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlMimeType identifies a textual representation of the mime type for a property&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlMixed identifies a multivalued property with mixed content&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlNs identifies an XML namespace&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlRegistry marks a class that has @XmlElementDecl&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlRootElement maps a class or enumeration to an XML element&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlSchema identifies a target namespace for a package&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlSchemaType maps a Java type to a built-in schema type&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlSchemaTypes acts as a container for multiple @XmlSchemaType annotations&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlTransient sets a property that shouldn&amp;quot;t be saved&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlType maps a class or enumeration to a schema type&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;XmlValue maps of a class to a simple schema content or type&amp;lt;/LI&amp;gt;&amp;lt;/OL&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>