gpt4 book ai didi

JAXB : Is the annotation @XmlAccessorType is only for Serialization and nothing to do with Binding of data?

转载 作者:行者123 更新时间:2023-12-04 00:53:09 25 4
gpt4 key购买 nike

我想知道为什么我们在使用 JAXB 时需要指定注解 @XmlAccessorType 。

当我用谷歌搜索这个时,我从一个网站上找到了这个描述
@XmlAccessorType 设置默认字段和属性可序列化。默认情况下,JAXB 序列化公共(public)字段和属性。通过设置@XmlAccessorType,bean 可以选择只允许序列化带注释的字段。

在这里,作者提到,通过这个注解,它可以控制序列化。

我的问题是,所以@XmlAccessorType 与从 XML 到 java 和从 java 到 XML 的 JAXB 绑定(bind)和解除绑定(bind)无关,它只与序列化有关。

最佳答案

JAXB 的 @XmlAccessorType注释仅供 JAXB (JSR-222) 使用用于确定如何将文件编码到 XML 或从 XML 编码的实现:

通常要做出的主要决定是在 FIELD 之间。 & PROPERTY/PUBLIC . FIELD当您的 get/set 方法中有不想在编码/解码期间触发的逻辑时,它特别有用。要查看此选择影响映射元数据的一种方式,请参阅:

  • http://blog.bdoughan.com/2012/02/jaxbs-xmltype-and-proporder.html
  • NONE当您有许多未映射的属性并且您想告诉您的 JAXB 实现仅映射您已注释的字段/属性时,这是一个有用的选择。这比添加大量 @XmlTransient 容易得多。注释到您的模型中。

    更多信息
  • http://blog.bdoughan.com/2011/06/using-jaxbs-xmlaccessortype-to.html
  • 关于JAXB : Is the annotation @XmlAccessorType is only for Serialization and nothing to do with Binding of data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10013282/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com