我需要为 joda LocalDate 编写一个自定义序列化器。序列化器应该尽可能快,并创建尽可能小的输出。
我可以通过网络发送基本的 Java 原语和对象,例如long、boolean、int、String 等,但不是任何 Joda 类型的对象。
我注意到一个内部“iLocalMillis”字段不可公开访问。也不知道如何序列化 Chronology 组件...
如有任何帮助,我们将不胜感激。
干杯
最佳答案
如果 ISOChronology
对您来说足够了,那么这个答案就足够且简单了:
- 写入属性
getYear()
、getMonthOfYear()
和getDayOfMonth()
。 - 读取提到的三个整数属性并使用 this constructor of LocalDate .
如果您需要序列化年表
,那么您就有点不走运,必须研究 JavaDoc 中发布的每个具体年表的序列化形式。一个例子是 GJChronology 的序列化形式.
关于java - 自定义序列化 joda LocalDate 的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24384765/