gpt4 book ai didi

java - 当 JsonProperty 属性不同时如何打印对象 json?

转载 作者:行者123 更新时间:2023-12-05 04:43:45 25 4
gpt4 key购买 nike

如果我有任何类,例如:


import com.fasterxml.jackson.annotation.JsonProperty;

class Person {

@JsonProperty("alternativeName")
private String name;
}

我有一个 name = "test"

的 A 实例

我想在日志中:

Object Person(alternativeName=test, ... [other JsonProperty..])

如何使用 JsonProperty 而不是属性来获取该对象?有什么办法可以得到吗?

最佳答案

它在日志中的显示方式取决于 toString() 方法。它通常包括属性的名称并且不处理 @JsonProperty 注释。您有两种方法可以做到这一点:

  1. 更改toString() 实现,使其打印alternativeName 而不是name。这样做的缺点是,如果您想将 alternativeName 更改为其他任何内容,您将需要调整两个 String
  2. 在您的日志语句中使用ObjectMapper writeValueAsString() 方法。这将考虑 @JsonProperty 但它将 Person 记录为 JSON 而不是常规 POJO(如您在示例中所述)。

现在您需要妥协并选择您认为最好的方法。

关于java - 当 JsonProperty 属性不同时如何打印对象 json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69531885/

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