【问题标题】:How to convert Object to Json String but with @JsonProperty instead of field names?如何将对象转换为 Json 字符串但使用 @JsonProperty 而不是字段名称?
【发布时间】:2023-01-17 15:50:08
【问题描述】:

对于类似于以下的类:

class A{
   @JsonProperty("hello_world")
   private String helloWorld;

   public String getHelloWorld(){...}
   public void setHelloWorld(String s){...}
}

当我尝试通过 Object Mapper 或 GS​​ON 将其转换为 Json 对象时。

new ObjectMapper().writeValueAsString(object);
or
gson.toJson(object);

我得到的是这样的:

{
"helloWorld": "somevalue";
}

但是我需要像这样拾取 Json 属性:

{
"hello_world": "somevalue"
}

我环顾了其他类似的问题,但没有一个解决这个问题。请帮忙。

【问题讨论】:

    标签: java json gson objectmapper


    【解决方案1】:

    对我来说效果很好,我用你一个对象,我的代码是:

    A a = new A();
    a.setHelloWorld("laalmido");
    String s = new com.fasterxml.jackson.databind.ObjectMapper().writer().withDefaultPrettyPrinter().writeValueAsString(a);
    System.out.println("json = " + s);
    

    输出是:

    JSON = { “hello_world”:“laalmido” }

    【讨论】:

      猜你喜欢
      • 2012-12-25
      • 2017-09-08
      • 2015-09-01
      • 1970-01-01
      • 2016-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-06
      相关资源
      最近更新 更多