使用 Java 记录与 JSON-B + Jax-RS

Use Java records with JSON-B + Jax-RS

我的项目使用 JSON-B 和 JAX-RS。我用的框架是Quarkus,用的是Java11。我试过升级到Java16,用的是Java记录。 JSON-B 和 Records 似乎不能很好地工作。

我试过@JsonbCreator。但是此注解仅适用于单个构造函数。

我也曾尝试使用此处所示的 Apache Johnzon (https://adambien.blog/roller/abien/entry/java_14_java_record_json)。但是 Quarkus Resteasy 没有 Johnzon 绑定。

是否有允许我切换到 Java 记录的解决方案?

谢谢

Quarkus 使用 Eclipse Yasson 作为其 JSON-B 实现,目前 Yasson 不支持 Records。 然而,这可能很快就会改变,请参阅 this 问题。

如果您愿意离开 JSON-B,您可以将 Jackson 与 Quarkus 一起使用,并获得 Records 支持,因为 Jackson 自版本 2.12

起支持它们