如何配置Jackson ObjectMapper以显示根值?

时间:2015-01-21 12:59:48

标签: java json spring jackson

在我的春季项目中,我添加了杰克逊1,现在它已经是2,然后我看到了这种差异。之前的回复是正确的,并且登录响应' loginResponse'现在Json没有对象名 loginResponse的旧对象类如下:

public class LoginResponse {

    private String code;

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

}

以下是带有注释和SerializationFeature.WRAP_ROOT_VALUE的loginResponse的新对象类,false:

@JsonRootName(value = "loginResponse") 
public class LoginResponse {

private String code;

public String getCode() {
    return code;
}

public void setCode(String code) {
    this.code = code;
}

ObjectMapper aa= new ObjectMapper().configure(SerializationFeature.WRAP_ROOT_VALUE, false);

}

我想要这个输出:

{
   "loginResponse":
   {
       "code": 0
   }
}

但它给了我以下回应:

 {
       "page": 0
}

任何人都知道这一点。怎么解决?请。

1 个答案:

答案 0 :(得分:1)

我认为SerializationFeature.WRAP_ROOT_VALUE应该设置为true而不是false,就像上面的代码片段一样。