188 lines
8.0 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.xml.bind.annotation
</div>
<h2 class="title" title="Annotation Type XmlRootElement">Annotation Type XmlRootElement</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre><a href="../../../../java/lang/annotation/Retention.html" title="annotation in java.lang.annotation">@Retention</a>(<a href="../../../../java/lang/annotation/Retention.html#value--">value</a>=<a href="../../../../java/lang/annotation/RetentionPolicy.html#RUNTIME">RUNTIME</a>)
<a href="../../../../java/lang/annotation/Target.html" title="annotation in java.lang.annotation">@Target</a>(<a href="../../../../java/lang/annotation/Target.html#value--">value</a>=<a href="../../../../java/lang/annotation/ElementType.html#TYPE">TYPE</a>)
public @interface <span class="memberNameLabel">XmlRootElement</span></pre>
<div class="block">
<span>将类或枚举类型映射到XML元素。</span>
<p> <span><b>用法</b></span> </p>
<p> <span>@XmlRootElement注释可以与以下程序元素一起使用</span> </p>
<ul>
<li> <span>顶级班</span> </li>
<li> <span>枚举类型</span> </li>
</ul>
<p> <span>有关其他常见信息请参阅javax.xml.bind.package javadoc中的“Package Specification”。</span> </p>
<p> <span>当顶级类或枚举类型使用@XmlRootElement注释进行注释时其值将表示为XML文档中的XML元素。</span> </p>
<p> <span>此注释可与以下注释一起使用: <a href="../../../../javax/xml/bind/annotation/XmlType.html" title="javax.xml.bind.annotation中的注释"><code>XmlType</code></a> <a href="../../../../javax/xml/bind/annotation/XmlEnum.html" title="javax.xml.bind.annotation中的注释"><code>XmlEnum</code></a> <a href="../../../../javax/xml/bind/annotation/XmlAccessorType.html" title="javax.xml.bind.annotation中的注释"><code>XmlAccessorType</code></a> <a href="../../../../javax/xml/bind/annotation/XmlAccessorOrder.html" title="javax.xml.bind.annotation中的注释"><code>XmlAccessorOrder</code></a></span> </p>
<p></p>
<p> <span><b>示例1</b>将元素与XML模式类型相关联</span> </p>
<pre> <span>// Example: Code fragment
@XmlRootElement
class Point {
int x;
int y;
Point(int _x,int _y) {x=_x;y=_y;}
}</span> </pre>
<pre> <span>//Example: Code fragment corresponding to XML output
marshal( new Point(3,5), System.out);</span> </pre>
<pre> <span>&lt;!-- Example: XML output --&gt;
&lt;point&gt;
&lt;x&gt; 3
&lt;y&gt; 5
&lt;/point&gt;</span> </pre>
<span>注释导致在模式中生成全局元素声明。</span>
<span>全局元素声明与类映射到的XML模式类型相关联。</span>
<pre> <span>&lt;!-- Example: XML schema definition --&gt;
&lt;xs:element name="point" type="point"/&gt;
&lt;xs:complexType name="point"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="x" type="xs:int"/&gt;
&lt;xs:element name="y" type="xs:int"/&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;</span> </pre>
<p> <span><b>示例2类型继承的正交性</b></span> </p>
<p> <span>在类型上注释的元素声明不会由其派生类型继承。</span> <span>以下示例显示。</span> </p>
<pre> <span>// Example: Code fragment
@XmlRootElement
class Point3D extends Point {
int z;
Point3D(int _x,int _y,int _z) {super(_x,_y);z=_z;}
}
//Example: Code fragment corresponding to XML output *
marshal( new Point3D(3,5,0), System.out );
&lt;!-- Example: XML output --&gt;
&lt;!-- The element name is point3D not point --&gt;
&lt;point3D&gt;
&lt;x&gt;3&lt;/x&gt;
&lt;y&gt;5&lt;/y&gt;
&lt;z&gt;0&lt;/z&gt;
&lt;/point3D&gt;
&lt;!-- Example: XML schema definition --&gt;
&lt;xs:element name="point3D" type="point3D"/&gt;
&lt;xs:complexType name="point3D"&gt;
&lt;xs:complexContent&gt;
&lt;xs:extension base="point"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="z" type="xs:int"/&gt;
&lt;/xs:sequence&gt;
&lt;/xs:extension&gt;
&lt;/xs:complexContent&gt;
&lt;/xs:complexType&gt;</span> </pre>
<span><b>示例3</b>将全局元素与类映射到的XML模式类型相关联。</span>
<pre> <span>//Example: Code fragment
@XmlRootElement(name="PriceElement")
public class USPrice {
@XmlElement
public java.math.BigDecimal price;
}
&lt;!-- Example: XML schema definition --&gt;
&lt;xs:element name="PriceElement" type="USPrice"/&gt;
&lt;xs:complexType name="USPrice"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="price" type="xs:decimal"/&gt;
&lt;/sequence&gt;
&lt;/xs:complexType&gt;</span> </pre>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
JAXB2.0
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.optional.element.summary">
<!-- --> </a> <h3>Optional Element Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Optional Element Summary table, listing optional elements, and an explanation">
<caption>
<span>Optional Elements</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Optional Element and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlRootElement.html#name--">name</a></span></code>
<div class="block">
XML元素的本地名称。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/xml/bind/annotation/XmlRootElement.html#namespace--">namespace</a></span></code>
<div class="block">
XML元素的命名空间名称。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="annotation.type.element.detail">
<!-- --> </a> <h3>Element Detail</h3> <a name="namespace--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>namespace</h4> <pre>public abstract <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> namespace</pre>
<div class="block">
<span>XML元素的命名空间名称。</span>
<p> <span>如果值为“## default”则XML命名空间名称是从类的包 <a href="../../../../javax/xml/bind/annotation/XmlSchema.html" title="javax.xml.bind.annotation中的注释"><code>XmlSchema</code></a> <a href="../../../../javax/xml/bind/annotation/XmlSchema.html" title="javax.xml.bind.annotation中的注释">导出的</a></span> <span>如果包未被命名则XML命名空间是默认的空命名空间。</span> </p>
</div>
<dl>
<dt>
Default:
</dt>
<dd>
“##默认”
</dd>
</dl> </li>
</ul> </li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="name--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>name</h4> <pre>public abstract <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> name</pre>
<div class="block">
<span>XML元素的本地名称。</span>
<p> <span>如果值为“## default”则该名称将从类名派生。</span> </p>
</div>
<dl>
<dt>
Default:
</dt>
<dd>
“##默认”
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>