gpt4 book ai didi

java - JAXB 将空列表映射到空集合?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:52:47 27 4
gpt4 key购买 nike

我有一个 webservice soap 服务,它将一个带有可选列表的对象作为 xml 参数:

@XmlElement(required = false)
private List<String> list;

public List<String> getList() { return list; }

如果客户端未提供列表标记,是否可以告诉 JAXB 始终返回/使用空集合而不是 null 列表?

或者我是否总是必须在服务器端为永远不应为 null 的列表定义一个惰性 getter(我希望始终如此)?

public List<String> getList() {
if (list == null) {
list = new ArrayList<String>();
}
return list;
}

最佳答案

如果您希望 XML 中的集合缺失对应于 Java 对象中的空 List,您只需执行以下操作。

@XmlElement(required = false)
private List<String> list = new ArrayList<String>();

这将像该字段为 null 一样进行编码。使用 @XmlElementWrapper 注释时,null 和空 List 的编码方式唯一不同。

关于java - JAXB 将空列表映射到空集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25483338/

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