在将 json 字符串映射到对象时使用 @jsonProerty 注释而不是 getter 方法

use @jsonProerty annotation instead of getter method while mapping json string to object

Java Class

public class Employee{

    @JsonProperty("NAME")
    private String name;
   

 @JsonProperty("NAME")
    public String getName() {
        return name;
    }

    @JsonProperty("NAME")
    public void setName(String name) {
        this.name = name;
    }

  }

输入Json字符串{"NAME":"xxxx"}

ObjectMapper mapper=new ObjectMapper();
 
 Employee employee = mapper.readValue(jsonMessage, Employee.class);

system.out.println(employee.toString);

输出==={"name":"xxxx"}

将 json 字符串映射到 java class 时,有什么方法可以告诉您使用 @Json属性 而不是 getterMethod 吗? 如果我打印对象,期望输出与输入相同。

您将 System.out.println 与经典的 String employeeAsString = mapper.writeValueAsString(employee).

混淆了,它不遵守任何 Jackson 注释

试试后一种,你会得到大写的字段名称。