鉴于:
@XmlRootElement(name = "foo")
class Foo {
public Bar getBar() {...}
}
class Bar {
@XmlElement(name = "string")
public String getString() {return "hello";}
}
我如何注释,所以 XML 将是:
<foo>
<string>hello</string>
</foo>
您可以利用@XmlValue
注释执行以下操作。
富
@XmlRootElement
class Foo {
@XmlElement(name="string")
public Bar getBar() {...}
}
酒吧
class Bar {
@XmlValue
public String getString() {return "hello";}
}
了解更多信息
您可能需要在课堂上使用@XmlSeeAlso注释。
当您希望在 XML 输出中包含另一个实体 bean 时,可以使用 @XmlSeeAlso 注释。你能在你的 Foo 课上试试这个吗
@XmlRootElement(name = "foo")
@XmlSeeAlso(Bar.class)
class Foo {
public Bar getBar() {...}
}
更新1:
对于删除 XML 中的 bar 标记的评论,请尝试使用EclipseLink JAXB (MOXy) 的. @XmlPath 将解决您的问题。
@XmlRootElement(name = "foo")
@XmlSeeAlso(Bar.class)
class Foo {
@XmlPath(".")
public Bar getBar() {...}
}
有关详细信息,请参阅此处。
我不确定您是否可以从生成的 XML中消除标签栏: