杰克逊在没有双引号的情况下序列化和反序列化对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了杰克逊在没有双引号的情况下序列化和反序列化对象相关的知识,希望对你有一定的参考价值。

我想将java DateUUID等对象序列化和反序列化为String。问题是它用双引号括起String本身:

String s = objectMapper.writeValueAsString(date);
System.out.println("String: @@" + s + "@@"); // String: @@"2017-12-06T04:50:30Z"@@
...
Date d = objectMapper.readValue(s, Date.class); // Expects the String to be ""2017-12-06T04:50:30Z""

有没有办法配置对象映射器不使用/期望冗余双引号?

答案

如果有人面临同样的问题:我没有找到任何其他方式,但一个丑陋的解决方法。我只是在将字符传递给对象映射器之后/之前删除/添加引号。

以上是关于杰克逊在没有双引号的情况下序列化和反序列化对象的主要内容,如果未能解决你的问题,请参考以下文章

杰克逊序列化没有正确处理单引号

Spring boot,Jackson Json 在序列化和反序列化时出现问题

杰克逊的 JSON 注入修复

强制杰克逊在没有 JsonIgnore 的情况下忽略 isEmpty

杰克逊的@JsonSubTypes仍然是多态反序列化所必需的吗?

如何在没有jackson注释的情况下忽略反序列化的某些字段?