我正在使用带有Spring Data Couchbase 1.3.2的Couchbase 4.0.0,并希望使用引用文档而不是嵌入式文件来保持关系。 例如,文档如下:
{
title: "Some Title",
pages: 123,
publisher: {
name: "O'Reilly Media",
location: "CA"
}
}
但我想要这样的文件:
{
_id: "oreilly",
name: "O'Reilly Media",
location: "CA"
}
{
_id: 123456789,
title: "Some Title",
pages: 123,
publisher_id: "oreilly"
}
我有2个不同的类来表示数据,我使用注释@Document
和@Field
。我已经尝试过注释@ManyToOne
,但它没有用。
答案 0 :(得分:2)
Spring Data Couchbase目前不支持@ManyToOne
类型的文档关系。非常重要的是,这个注释由JPA
提供,而不是Spring Data本身的一部分(在所有支持Spring Data的商店中并不常见)。
请注意,1.3.2
是一个相当旧的版本,从那时起,Spring Data Couchbase连接器几乎完全被2.0.0
重写(而2.1.0
就在附近)。< / p>
在这个2.0.0版本中对Spring Data Couchbase功能进行了一些重大升级,并且将子对象存储为单独文档的想法被抛弃了,作为一个想法。它可能会在未来的版本中出现,但它没有明确的路线图。 编辑:如果添加了该功能,则它至少不会在2.2.0之前