[alibaba/fastjson]不支持java14中的新特性record

2023-12-15 583 views
1

image fastJson版本为1.2.76

回答

4

因为Record内部没有getter(),setter(),所以序列化出来是空的.

8

这个问题目前官方提供的方案是升级到fastjson2,但是fastjson2破坏了大部分fastjson1的API,目前恐怕只能强行fieldBase=true勉强支持,副作用也很强。

        var record = new SomeRecorrd();

        // 序列化
        var json = JSON.toJSONString(record, new SerializeConfig(true));

        // 反序列化
        var jsonObject = JSON.<JSONObject>parseObject(json, JSONObject.class, parser);

anyway, 使用jackson吧,至少不是拿用户当猴耍。