Module  java.xml.bind

Annotation Type XmlAttribute



  • @Retention(RUNTIME)
    @Target({字段,METHOD})
    public @interface XmlAttribute

    将JavaBean属性映射到XML属性。

    用法

    @XmlAttribute注释可以与以下程序元素一起使用:

    • JavaBean属性
    • 领域

    静态最终字段映射到XML固定属性。

    有关其他常见信息,请参阅javax.xml.bind.package javadoc中的“Package Specification”。

    用法受以下限制:
    • 如果字段或属性的类型是集合类型,则集合项类型必须映射到模式简单类型。
        // Examples
           @XmlAttribute List<Integer> items; //legal
           @XmlAttribute List<Bar> foo; // illegal if Bar does not map to a schema simple type 
    • 如果字段或属性的类型是非集合类型,则属性或字段的类型必须映射到简单的模式类型。
        // Examples
           @XmlAttribute int foo; // legal
           @XmlAttribute Foo foo; // illegal if Foo does not map to a schema simple type 
    • 此注释可与以下注释一起使用: XmlIDXmlIDREFXmlListXmlSchemaTypeXmlValueXmlAttachmentRefXmlMimeTypeXmlInlineBinaryDataXmlJavaTypeAdapter

    示例1:将JavaBean属性映射到XML属性。

      //Example: Code fragment
         public class USPrice {
             @XmlAttribute
             public java.math.BigDecimal getPrice() {...} ;
             public void setPrice(java.math.BigDecimal ) {...};
         }
      <!-- Example: XML Schema fragment --> <xs:complexType name="USPrice"> <xs:sequence> </xs:sequence> <xs:attribute name="price" type="xs:decimal"/> </xs:complexType>  

    示例2:将JavaBean属性映射到具有匿名类型的XML属性。

    参见@ XmlType中的例7。

    示例3:将JavaBean集合属性映射到XML属性。

      // Example: Code fragment
         class Foo {
             ...
             @XmlAttribute List<Integer> items;
         }
      <!-- Example: XML Schema fragment --> <xs:complexType name="foo"> ... <xs:attribute name="items"> <xs:simpleType> <xs:list itemType="xs:int"/> </xs:simpleType> </xs:complexType>  
    从以下版本开始:
    1.6,JAXB 2.0
    另请参见:
    XmlType
    • Optional Element Summary

      Optional Elements  
      Modifier and Type Optional Element 描述
      String name
      XML Schema属性的名称。
      String namespace
      指定XML Schema属性的XML目标命名空间。
      boolean required
      指定XML Schema属性是否为可选或必需。
    • Element Detail

      • name

        String name
        XML Schema属性的名称。 默认情况下,XML Schema属性名称是从JavaBean属性名称派生的。
        Default:
        “##默认”
      • required

        boolean required
        指定XML Schema属性是否为可选或必需。 如果为true,则JavaBean属性将映射到所需的XML Schema属性。 否则,它被映射到可选的XML模式属性。
        Default:
      • namespace

        String namespace
        指定XML Schema属性的XML目标命名空间。
        Default:
        “##默认”