如何在不改变POJO的情况下包装JSON

时间:2016-02-04 19:29:40

标签: java json rest jersey jackson

我发送的请求包含以下有效负载

{
    "C": 
       {
        "x": "Default",
        "y": "Trial",
        "z": "3"
      }
 }

@JsonRootName(value = "C")
public class C_POJO()...

我正在使用具有以下配置的ObjectMapper

MAPPER.configure(SerializationFeature.WRAP_ROOT_VALUE, true); //in response
MAPPER.configure(DeserializationFeature.UNWRAP_ROOT_VALUE, true);//in request

和请求由

组成
C_POJO c = new C_POJO();
c.setX("Default");
c.setY("Trial");
c.setZ("3");

Response responsBody = service.path(  targetURI  )
                .request(MediaType.APPLICATION_JSON)
.post(Entity.entity(c, MediaType.APPLICATION_JSON)  ,   Response.class);

现在由于某些情况,我想发送带有以下有效负载的请求

{
  "A": {
    "B": {
      "C": {
        "x": "Default",
        "y": "Trial",
        "z": "3"
      }
    }
  }
}

(C在B中被包裹,再次包裹在A中。)

任何人都可以在不改变Java POJO类的情况下建议如何实现这一点。可能正在使用ObjectMapper或任何其他方式?

提前致谢!!

0 个答案:

没有答案