Jackson怎样可以把null的属性转换为空字符串?

发布于 2021-11-29 13:29:16 字数 123 浏览 905 评论 10

Hi,

   我有一个问题,使用JAVA对象转换为JSON对象的时候,如果对象中的属性为空,那么转换到前台的值为null,jackson是否有注解能够使得null值自动转换为空''字符串?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

德意的啸 2021-11-30 16:31:28

要是 对象为空怎么办 ,list ,map  ,枚举 为 null的情况下也会转成 空字符串  ,这样类型不正确了 客户端报错

多彩岁月 2021-11-30 16:28:32

但是前台要显示啊,没有这个属性前台取值的时候不是也很奇怪吗,感觉像是后台返回的数据有问题一样。

酷到爆炸 2021-11-30 16:25:56

就像是数据结构不完整了

小瓶盖 2021-11-30 15:56:02

为什么要替换成""呢? 如果属性的值为null,我觉得转成json后就不该有这个属性。

只为守护你 2021-11-30 15:46:39

我也想知道。。。

瀞厅☆埖开 2021-11-30 15:19:15

不行啊,还是NULL

坐在坟头思考人生 2021-11-30 14:14:45

回复
把代码贴过来,我帮你看看。

情痴 2021-11-30 13:52:24

你需要gooogle的gson,一句话搞定:

Gson gson = new GsonBuilder().serializeNulls().create();

gson.toJson(...)

明媚如初 2021-11-30 06:19:19

没有原生的方法吗

夜司空 2021-11-30 06:10:38

自定义一个objectmapper

修改这个方法

this.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {

@Override
public void serialize(Object arg0, JsonGenerator arg1, SerializerProvider arg2) throws IOException, JsonProcessingException {
arg1.writeString("");
}

});

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文