我的Spring使用camelCase,但我需要通过API将一些请求代理到使用snake_case的第三方API。是否可以将杰克逊配置为从snake_case反序列化第三方响应,然后将其序列化回camelCase到我的前端?
所需功能的一步一步的示例:
示例对象:
MyObject {
String myProperty;
}{
"my_property": "my value"
}我的API将其反序列化为MyObject
。
{
"myProperty": "my value"
}现在我正在使用@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class),但当然也会序列化为snake_case。注意:尽管我的api使用camelCase,但始终从snake_case反序列化是可以接受的,因为这将是一个只读点。
发布于 2022-09-29 16:09:06
您可以在各个属性上添加@JsonAlias注释,以添加用于反序列化的替代名称。或者可以使用显式命名策略配置多个对象映射器,一个用于此第三方API的反序列化,另一个用于常规序列化/反序列化。
https://stackoverflow.com/questions/73898176
复制相似问题