2017-03-18 67 views
0

我有同样嵌套的对象,这是我回来作为在Spring @RestController响应,例如对象的列表:杰克逊@RestController弹簧复位复制嵌套的对象

[{ 
      "id" : "10", 
      "name" : "test", 
      "createdBy" : { 
      "id" : "10", 
      "user" : { 
       "id" : "55", 
       "name" : "me" 
      } 
      } 
    }, 
    { 
      "id" : "13", 
      "name" : "test 2", 
      "createdBy" : 55 
    }] 

正如你所看到的第一个嵌套对象返回正确,但同一对象的第二次只返回该ID。

现在我想知道是否有办法强制杰克逊总是解决嵌套的对象,而不是只返回ID。

回答

2

如果我没记错,这不是默认行为。只有在配置了@JsonIdentityInfo时才会发生。

删除它将导致始终序列化为完整的POJO。

当不使用@JsonIdentityInfo时,请小心杰克逊无限循环。