我有一个POJO,我想要编组并以xml格式发送,但也要解组从同一个Web服务返回的数据。但是,此POJO中有某些字段,我不想发送,但可能是从服务器返回的xml中。
这里的问题是,如果我有一个名为status的int字段,并且我实际上没有为该字段设置任何值(因为我不想将此字段发送到服务器),JAXB仍然创建一个0元素在xml中。
所以我的问题是:我如何防止这种行为,只是省略该字段,但仍然能够读取从服务器返回的元素的值?
亲切的问候。
答案 0 :(得分:6)
重复我的评论作为答案...
由于int
无法代表“无价值”,因此您可以使用Integer
。如果这是null
,则JAXB将在编组时省略该字段。
答案 1 :(得分:-1)
使用JAXB Integer将转换为0(非空)。