如何序列化Jackson-Joda日期格式?


0

我想在flink流处理 job中将对象序列化为Json。在flink job中,所有对象都需要是可序列化的。

我用Jackson来序列化我的对象。

final ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new JodaModule());
mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);

当我使用这个时,我得到以下异常:

java.io.NotSerializableException: com.fasterxml.jackson.datatype.joda.cfg.JacksonJodaDateFormat

如何使包含joda模块的对象 map器可序列化?

1 答案


0

Flink用自定义序列化程序序列化数据对象(未知对象用Kryo序列化)。但是,函数对象(即实现函数接口的类的对象,如MapFunction)通过Java序列化被传送到集群。

这里的问题似乎是ObjectMapper类有一个不可序列化的字段。您可以尝试将字段设置为瞬态,并且:

1) 重写Java序列化方法或


我来回答

写文章

提问题

面试题