0
{
    “平台”:“iOS”,
    “设备”: {
        "os_name": "iPhone 操作系统",
        “制造商”:“苹果”,
        “类型”:“iPhone3”,
        “版本”:“1”,
        “os_version”:“5.1.1”
    },
    "app_version": "1.0",
    “设备ID”: ””,
    "app_key": "1234567890",
    "developer_key": "",
    “app_name”:“测试”,
        "session": { // 这里
        “平台”:“iOS”,
        “设备”: {
            "os_name": "iPhone 操作系统",
            “制造商”:“苹果”,
            “类型”:“iPhone3”,
            “版本”:“1”,
            “os_version”:“5.1.1”
        },
        "app_version": "1.0",
        “设备ID”: ””,
        "app_key": "1234567890",
        "developer_key": "",
        “app_name”:“测试”
    }
}

这是 MappingJacksonConverter 生成的数据,但我不知道如何禁用包含整个递归数据的“会话”字段。

HttpEntity<OlSession> sessionEntity = new HttpEntity<OlSession>(new OlSession());

ResponseEntity<String> response = restTemplate.postForEntity("http://localhost:3000/test/abcd", sessionEntity, String.class);

这是发布上述数据的代码。我需要添加任何部分来禁用“会话”字段吗?

4

1 回答 1

0

有两个简单的解决方案。

1)使用杰克逊注释忽略该属性。

但是这样一来,OlSession 属性中的 session 就不会到处序列化了。

@JsonIgnore
对象 getSession() {
  返回会话
}

看看这个文档JacksonAnnotation

2) 发送前只需设置 null 即可。

于 2012-11-21T05:55:30.600 回答