gpt4 book ai didi

java - 如何将 Jackson PropertyNamingStrategy 与 Immutables 库一起使用

转载 作者:行者123 更新时间:2023-11-30 07:07:09 24 4
gpt4 key购买 nike

我正在使用https://immutables.github.io/与 jackson 一起的图书馆。我希望我的类可以 jackson 序列化。我想使用自定义 PropertyNamingStrategy (使用 com.fasterxml.jackson.databind.ObjectMapper 配置为 mapper.setPropertyNamingStrategy(PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES);

不幸的是,不可变库放置 @JsonProperty("propertyName")在生成的代码中的每个字段。这会覆盖在映射器级别(或在类级别,使用 @com.fasterxml.jackson.databind.annotation.JsonNaming 注释)定义的 PropertyNamingStrategy。

是否可以使 Immutables 库停止为每个字段添加属性名称(使用 org.immutables.value.Value.Style 或类似方法)?

我提出了解决方法,将@JsonProperty(没有值)放在每个属性上,但我对此并不满意。

最佳答案

样式属性 forceJacksonPropertyNames=false 不会强制属性名称为特定字符串。它与在类级别和映射器级别配置的命名策略一起使用。

样式简介可在此处获取:http://immutables.github.io/style.html

您可以在问题中阅读有关此设置的一些背景信息:https://github.com/immutables/immutables/issues/431 https://github.com/immutables/immutables/issues/353

关于java - 如何将 Jackson PropertyNamingStrategy 与 Immutables 库一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39900835/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com