如何在spring数据源库中实现关系?

问题描述 投票:0回答:1

我有两个文件:TableA和TableB。 TableA引用了TableB,但它们不能组合在一起。因为它们是非常“无关”的数据。从TableA到TableB也有某种“ManyToOne”关系。因此,我不想将TableB数据放在TableA中(冗余问题)。那是我的TableA json看起来像这样:

{
   "class":"tableA",
   "tableB": [
     "1", "2"
   ]
}

TableB json:

[
   {
      "class": "tableB",
      "id": "1",
      "name": "name1"
   },
   {
      "class": "tableB",
      "id": "2",
      "name": "name2"
   }
]

因此,在Spring数据沙发库中,我创建了两个不同的文档:TableA和TableB。我的疑问是,在TableA实体(@Document)中我应该直接引用TableB,还是只保留一个字符串数组(ID)?如果我直接引用TableB,那么我就不会得到上面的json。我主要担心的是,我将把所有数据复制到移动设备中。我不希望重复数据并导致内存问题。请帮忙。

json couchbase spring-data-couchbase
1个回答
0
投票

@ManyToOne不支持像spring-data-couchbase等关系注释。正如你已经知道的那样,在Couchbase本身没有任何强制关系的东西。

我在当前项目中有许多实体的关系,它们都只是将id / key称为字符串,我手动管理每个实体的加载。

所以我要说只是将TableB称为字符串数组,并将移动数据与TableB中的所需信息一起发送给移动设备......或者创建一个DTO类并手工填充它并将其交给您的客户端。

© www.soinside.com 2019 - 2024. All rights reserved.