【发布时间】:2016-02-10 12:40:09
【问题描述】:
如何翻译 Java 列表
List<String> locations
进入 XML 表示
...
<locations>
<location>/bob/app/l1.xml</location>
<location>/bob/app/l2.xml</location>
<location>/bob/app/l3.xml</location>
</locations>
...
同时保存JSON兼容格式:
...
"locations": ["/bob/app/l1.xml","/bob/app/l2.xml"]
...
我使用 Spring 并且我当前获得响应的 XML 格式是
...
<locations>/bob/app/l1.xml</locations>
<locations>/bob/app/l2.xml</locations>
...
我使用 JAXB 注释
@XmlElement(name = "locations")
public void setLocations(List<String> locations) {
this.locations = locations;
}
UPD
我找到了解决方案。我只需要使用
@XmlElementWrapper(name = "locations")
@XmlElement(name = "location")
public List<String> getLocations() {
return locations;
}
【问题讨论】:
-
这是在您的应用程序内部,还是您想要以 XML/Json 形式获得的响应?
-
<locations><location>a</location></locations>我想得到。 -
现在我得到
<locations>a</locations><locations>b</locations>。 -
你可以在这个方法周围放置一个包装类。用“位置”注释类。将此注释更改为“位置”。希望这会产生你想要的东西。可以在这里找到类似的东西'stackoverflow.com/questions/14202529/…'