当前位置: 首页 > 知识库问答 >
问题:

带有空字段的Java xml序列化

酆耀
2023-03-14

我有一个带有整数字段的类,需要序列化为xml。如果元素为空,我需要在xml中看到空字符串。例子:

  <myObj field=""/>

无论我怎么努力,我都无法做到这一点。我尝试了这样的事情:

public class MyObj {
    @JacksonXmlProperty(isAttribute = true)
    @JsonInclude(Include.ALWAYS)
    Integer field;
}

我怎样才能做到这一点我将非常感谢你的帮助

共有1个答案

缑修齐
2023-03-14

正如@f1sh注释中提到的,空字符串(“”)不是有效的整数值。

使用Jackson,您可以创建自定义序列化程序(并且需要自定义反序列化程序)。

这一页可能会有所帮助。

 类似资料:
  • 问题内容: 我正在订购我的数据,并且其工作正常,但某些字段为空或没有值。订购时,这些空字段首先出现。例如,当订购数字时,我们将在获得“ 0”值之前得到一个巨大的空列表。 我这样做是这样的: 和 JSFiddle:http : //jsfiddle.net/JZuCX/1/ 有没有简单而优雅的方法可以解决此问题?无论什么情况,我都希望空白字段排在最后。 问题答案: 我要编写一个过滤器,该过滤器从有序

  • 例如: 我知道有jackson注解可以这样做,但是我的字段已经用我的持久性注解进行了注解,所以我想避免重复,因为我已经有了我想忽略的注解的字段

  • 我使用Gson与改造。我的服务器接受空值,所以在我给的gson构建器 这样就不会忽略空值。但是在一些s中,我有一个特殊的情况,其中一些字段应该存在,即使是它的null,而其他一些字段如果是null也不应该序列化。 例如,如果我有一个请求类,比如 如果我有一个请求,其中和,应该将其序列化如下: 这意味着,如果type为null,它应该忽略该字段,但是如果id为null,它应该在请求中显示为null。

  • 我使用了Gson,但我需要转换器只序列化非空值或非空值。 例如: 现在,将该对象转换为json的Gson实例如下所示

  • 我正在使用Jackson ObjectMapper序列化POJO。我在POJO中有嵌套字段。例如:序列化类 如果字符串为,则不序列化整个属性。也就是说,如果字符串为,我希望输出为: 但我得到的是作为输出。 我已经为序列化包含设置了(),但这并不能解决问题

  • 我有一个带有lombok注释的POJO,我的JSON通过Jackson将它反序列化,如下所示: 当jackson试图反序列化仅列出一个响应时 缺少什么来确保所有属性要么包含反序列化JSON中的相应值,要么包含默认分配值的空列表? -更新-这不是问题,直到我从Spring 1.3.5升级到1.4.2,这也将我的Jackson版本从2.6.6升级到2.8.4