gpt4 book ai didi

java - JAXB minOccurs 在 required 设置为 true 时消失

转载 作者:行者123 更新时间:2023-12-04 06:35:51 25 4
gpt4 key购买 nike

我从 @XmlElement 的 JAXB 文档中得到了这个

If required() is true, then Javabean property is mapped to an XML schema element declaration with minOccurs="1". maxOccurs is "1" for a single valued property and "unbounded" for a multivalued property.



然而当我说
@XmlElement(name = "Name", required = true, nillable = false)

我在 .xsd 中得到以下内容
<xs:element name="Name" type="xs:string"/>

我想知道如何使 minOccurs 等于 1。似乎是 required = true原因 minOccurs消失

编辑
我意识到默认值是 1。无论如何,minOccurs 在 .xsd 中显示为 1

编辑 2
我正在使用 JAXBContext.generateSchema 生成架构(仅供引用)

最佳答案

JAXB 规范定义了行为:

If required() is true, then Javabean property is mapped to an XML schema element declaration with minOccurs="1". maxOccurs is "1" for a single valued property and "unbounded" for a multivalued property.



各个实现( MetroEclipseLink MOXyApache JaxMe )可以根据此规则自由生成他们认为合适的 XML 模式。 Metro 和 MOXy(我是技术负责人)选择使用缺少 minOccurs 属性来指示 minOccurs="1"。

关于java - JAXB minOccurs 在 required 设置为 true 时消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4891141/

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