【问题标题】:XStream parser empty tag for null values空值的 XStream 解析器空标记
【发布时间】:2017-05-20 04:26:11
【问题描述】:

我正在使用 XStream 解析器。我想获得一个空标签来代替变量的空值。我如何做到这一点?

例子:

class Person{
    private String name;
    private String age;
}

Person person = new Person("Joe", null);

我明白了,

<Person>
    <name>Joe</name>
</Person>

我需要这个,

<Person>
    <name>Joe</name>
    <age></age>
</Person>

【问题讨论】:

  • 尝试设置空字符串。

标签: java xml parsing xstream


【解决方案1】:

如果它只涉及字符串,用“”初始化它们,而不是用 null。

所以而不是:

Person person = new Person("Joe", null);

试试:

Person person = new Person("Joe", "");

另外,请务必查看:XStream serialize null values

【讨论】:

  • 如果它有两个字段,那么它就可以了。我有 12 个班级,每个班级大约有 30 个字段。我无法设置每个变量。是否有任何配置,无论哪个变量为空,它都应该设置一个这样的空字符串?
  • Corry,真的找不到/想不出任何其他方式......也许这个Correct way to represent null XML elements或这个XML serialization, hide null values可能有助于提供任何帮助?
  • 实际上,Saulius Next 对您的问题的评论似乎有效,但这与我提供的解决方案相同,但看起来更整洁。在 getter 和 setter 中提供这样的默认值怎么样?您能否详细介绍一下您的情况?
猜你喜欢
  • 2013-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-28
  • 1970-01-01
  • 2012-02-18
  • 2015-03-05
  • 2016-03-16
相关资源
最近更新 更多