javax.xml.bind.annotation

## Enum XmlAccessType

- java.lang.Object
- - java.lang.Enum<XmlAccessType>
  - - javax.xml.bind.annotation.XmlAccessType

- All Implemented Interfaces:
    Serializable, Comparable<XmlAccessType>

      public enum XmlAccessType
      extends Enum<XmlAccessType>

  Used by XmlAccessorType to control serialization of fields or properties.
  Since:
    JAXB2.0
  See Also:
    `XmlAccessorType`

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---
    `FIELD` | Every non static, non transient field in a JAXB-bound class will be automatically bound to XML, unless annotated by `XmlTransient`.
    `NONE` | None of the fields or properties is bound to XML unless they are specifically annotated with some of the JAXB annotations.
    `PROPERTY` | Every getter/setter pair in a JAXB-bound class will be automatically bound to XML, unless annotated by `XmlTransient`.
    `PUBLIC_MEMBER` | Every public getter/setter pair and every public field will be automatically bound to XML, unless annotated by `XmlTransient`.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static XmlAccessType` | `valueOf(String name)` | Returns the enum constant of this type with the specified name.
    `static XmlAccessType[]` | `values()` | Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### PROPERTY

          public static final XmlAccessType PROPERTY

      Every getter/setter pair in a JAXB-bound class will be automatically bound to XML, unless annotated by `XmlTransient`. Fields are bound to XML only when they are explicitly annotated by some of the JAXB annotations.

    - #### FIELD

          public static final XmlAccessType FIELD

      Every non static, non transient field in a JAXB-bound class will be automatically bound to XML, unless annotated by `XmlTransient`. Getter/setter pairs are bound to XML only when they are explicitly annotated by some of the JAXB annotations.

    - #### PUBLIC_MEMBER

          public static final XmlAccessType PUBLIC_MEMBER

      Every public getter/setter pair and every public field will be automatically bound to XML, unless annotated by `XmlTransient`. Fields or getter/setter pairs that are private, protected, or defaulted to package-only access are bound to XML only when they are explicitly annotated by the appropriate JAXB annotations.

    - #### NONE

          public static final XmlAccessType NONE

      None of the fields or properties is bound to XML unless they are specifically annotated with some of the JAXB annotations.

  - ### Method Detail

    - #### values

          public static XmlAccessType[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (XmlAccessType c : XmlAccessType.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static XmlAccessType valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.