Skip to content

关于Builder类支持json反序列化 #27

@fuyuanwu

Description

@fuyuanwu
    @PostMapping("/message/send")
    public MessageResponse sendMessage(@RequestParam("agentId") String agentId, @RequestBody AbstractMessageBody messageBody) {
        return agentMessageApiFactory.apply(agentId).send(messageBody);
    }

我在springboot项目中遇到个问题。
我想用象类AbstractMessageBody来做入参的形参,启用jackson的mix-in并配合@JsonTypeInfo和@JsonSubTypes注解来描述子类识别规则和@JsonDeserialize(builder = TextMessageBody.Builder.class) 这种来描述子类的构建方式,这其中遇到了Builder类没有默认构造方法无法实例化,以至于还要采取一些反射的魔法来解决这个事情。

是否可以把wecom-objects、wemp-objects包中用作值传递的这些类用让它以POJO的形式呈现。这样大量验证、序列号反序列化等框架就能更方便利用起来。原先提供的MessageBodyBuilders这种工具方法以边路的形式存在,让POJO和便捷方式分开。

当然,有其他好的使用方法也希望不吝赐教,感谢

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions