gpt4 book ai didi

java - wsimport 从 XSD 导入的枚举中的注释

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:17:39 33 4
gpt4 key购买 nike

有没有办法使用 wsimport 从 XSD 获取注释到 Java 代码?比如我有一个XSD文件

<!-- Enumerace /model/user/UserLevel.java -->
<xs:simpleType name="userLevel">
<xs:restriction base="xs:string">
<!-- basic user -->
<xs:enumeration value="BASE"/>
<!-- team leader -->
<xs:enumeration value="TL"/>
<!-- section leader -->
<xs:enumeration value="SL"/>
</xs:restriction>
</xs:simpleType>

我希望我生成的 java 枚举类看起来像这样:

@XmlType(name = "userLevel")
@XmlEnum
public enum UserLevel {
/**
* basic user
*/
BASE,
/**
* team leader
*/
TL,
/**
* section leader
*/
SL;
}

这在契约(Contract)优先中是否可能(例如,从 XSD 生成的 java 代码)?

最佳答案

好的,我在 XSD 中找到了解决方案:

<xs:simpleType name="MyEnum">
<xs:restriction base="xs:string">
<xs:enumeration value="STANDARD">
<xs:annotation>
<xs:documentation>
This is a comment.
</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>

生成一个 Java 枚举,例如:

@XmlType(name = "MyEnum")
@XmlEnum
public enum MyEnum {


/**
*
* This is a comment.
*
*
*/
STANDARD,

public String value() {
return name();
}

public static MyEnum fromValue(String v) {
return valueOf(v);
}

}

唯一的问题是 xs:documentation 不忽略空格,所以注释中有很多空格。

关于java - wsimport 从 XSD 导入的枚举中的注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4967153/

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