27.1.3. 自定义JSON序列化器和反序列化器
如果使用Jackson序列化,反序列化JSON数据,你可能想编写自己的JsonSerializer
和JsonDeserializer
类。自定义序列化器(serializers)通常通过Module注册到Jackson,但Spring Boot提供了@JsonComponent
注解这一替代方式,它能轻松的将序列化器注册为Spring Beans。
你可以在JsonSerializer
或者JsonDeserializer
的实现上,直接使用@JsonComponent
注解。你也可以在以内部类的形式包含序列化器/反序列化器的类上使用它,如下所示:
ApplicationContext
里所有的@JsonComponent
bean会自动注册到Jackson。因为@JsonComponent
用@Component
进行元注解,会应用通常的组件扫描规则。
Spring Boot也提供了JsonObjectSerializer
和JsonObjectDeserializer
基础类。它们为标准的Jackson版本提供了替代选择。详情请查看JsonObjectSerializer
和JsonObjectDeserializer
的Javadoc。
最后更新于