基于json中的属性的自定义序列化

时间:2019-01-23 17:13:47

标签: java json jackson

我得到一些json作为休息服务的输入。 json的部分如下

"attachment":[  
         {  
            "name":"bigimage1.jpg",
            "id":1,
            "contentType":"image/jpeg",
            "data":"very_big_base64encodedimage"
         },
         {  
            "name":"bigimage2.jpg",
            "contentType":"image/gif",
            "data":"very_big_base64encodedimage"
         },

我应该将“数据”的值复制到s3并放在队列中。目前,我正在使用客户序列化程序作为字段的注释,如下所示。其余json存储在队列中。

@JsonSerialize(using = CustomSerializer.class)
@JsonProperty("data")
private String data;

但是随着将来更多的应用程序将访问rest服务,我不能再使用POJO,而需要使用ObjectNode之类的通用对象。应用程序同意(为了更容易)在附件中添加“ contentType”之类的属性以指示它是图像。

        ObjectNode rootNode = (ObjectNode) mapper.readTree(inputJson);

我该如何解决这个问题。我需要以某种方式获取“数据”的自定义序列化,以将其存储到s3。

0 个答案:

没有答案