让我们看看自定义JSON绑定序列化和反序列化过程时 , 注释模型和运行时配置如何工作。
本系列的下一篇文章介绍JSON-B如何处理自定义对象的创建。
注解方法
使用注释方法,可以通过注释字段,JavaBean方法和类来定制默认的序列化和反序列化行为。
@JsonbNillable
@JsonbPropertyOrder(PropertyOrderStrategy.REVERSE)
public class Book {@JsonbProperty("cost")@JsonbNumberFormat("#0.00")private Float price;}
例如,您可以使用@ JsonbNillable批注自定义空处理,并使用@JsonbPropertyOrder批注自定义属性顺序。 这两个注释是在类级别指定的。
你可以指定与@JsonbNumberFormat标注的数字格式,并与@JsonbProperty注释更改字段的名称。
运行时配置
另外,您可以选择通过运行时配置构建器来处理定制,方法是配置 JsonbConfig 的实例并将其传递给Jsonb构建器的create方法,如此代码片段所示。
JsonbConfig jsonbConfig = new JsonbConfig().withPropertyNamingStrategy(PropertyNamingStrategy.LOWER_CASE_WITH_DASHES).withNullValues(true).withFormatting(true);Jsonb jsonb = JsonbBuilder.create(jsonbConfig);
无论哪种方式,JSON Binding API都为Java对象的序列化和反序列化提供了广泛的功能。 除了我在这些博客文章中讨论的内容之外,关于JSON Binding API还有更多的知识要知道。
翻译自: https://www.javacodegeeks.com/2018/04/get-to-know-customisation-json-binding-overview-series.html