反序列化MyEntity
(这是一个接口)时,我要么有
以下输入:
{ "id": 123 }
在这种情况下,我想将其反序列化为
new MyEntityRef(123)
或者我有以下输入:
{ "id": 123, "message": "Hello world", "otherEntity": { "field": "value", ... } }
在这种情况下,我想将其反序列化为
new MyEntityImpl(123, "Hello world", otherEntity);
where
otherEntity
的反序列化方式与在MyEntity
.
我已经想出了如何通过 a 注册我自己的自定义反序列化器,SimpleModule
但我不知道如何
- 根据某些字段的存在(
message
如上)选择自定义反序列化器。 - 某些字段(例如
otherEntity
上面)的“默认”序列化程序的后备。