Bar*_*cki 5 java serialization json jackson
是否可以使用 Jackson 序列化对象,但忽略使用注释注册的自定义序列化程序@JsonSerialize(using = MyCustomSerializer.class)?
理由:我想使用 Jackson 将我的对象转换为 Map,使用com.fasterxml.jackson.databind.ObjectMapper.convertValue(object,Map.class). 目前它不起作用,因为我的班级有自定义序列化程序(@JsonSerialize),但错过了反序列化程序。我需要自定义序列化器,我真的不需要也不想写反序列化器。
ObjectMapper.convertValue 使用我的序列化然后反序列化失败。
我想让 ObjectMapper 忽略@JsonSerialize 并使用默认的序列化逻辑。杰克逊有可能吗?
这是完全有可能的。您可以在每个 ObjectMapper 的基础上禁用注释,如下所示:
ObjectMapper mapper = new ObjectMapper();
mapper.disable(MapperFeature.USE_ANNOTATIONS);
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请查看github上的文档或查看baeldung上的示例。
| 归档时间: |
|
| 查看次数: |
2674 次 |
| 最近记录: |