json:参考

时间:2010-07-29 13:10:12

标签: java json gson

我正在使用带有Gson包的JSON for java。 我有一个对象,其中有一些内部引用从一个字段中的对象到另一个字段中的对象。例如:

  

{“loci”:[{“id”:“loc1”,
  “长度”:10000,“开始”:2},
  {“id”:“loc2”,“length”:100,
  “开始”:50000}],“情景”:[   {“id”:“scen1”,“loci”:[       {        “id”:“loc1”,        “长度”:10000,        “开始”:2       },       {        “id”:“loc2”,        “长度”:100,        “开始”:50000       }]},]}

所以我实际上只在我的java程序(loc1和loc2)中定义了两个locus对象,但在打印输出中,对象是重复的,并且出现在“loci”和“scen1”里面。 JSON能否反映出实际上只有两个对象(所以当我加载它时,它不会创建四个基因而不是两个)?

1 个答案:

答案 0 :(得分:3)

没有。 JSON仅处理值,而不处理引用。您将需要使用某种约定来指示值实际上是一个引用,并编写自定义序列化器/反序列化器。