我正在使用https://immutables.github.io/库和杰克逊。我希望我的课程是杰克逊可序列化的。我想使用自定义PropertyNamingStrategy
(配置为com.fasterxml.jackson.databind.ObjectMapper
使用 mapper.setPropertyNamingStrategy(PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES);
不幸的是,Immutables 库将@JsonProperty("propertyName")
生成代码的每个字段都放在了其中。这会覆盖在映射器级别(或在类级别,使用@com.fasterxml.jackson.databind.annotation.JsonNaming
注释)定义的 PropertyNamingStrategy。
是否可以让 Immutables 库停止为每个字段放置属性名称(使用org.immutables.value.Value.Style
或类似方式)?
我提供了解决方法,将@JsonProperty(没有价值)放在每个属性上,但我对此并不满意。