2016-03-29 12 views
1

'da başvurulan belge ile ilişki Couchbase 4.0.0'ı Spring Data Couchbase 1.3.2 ile kullanıyorum ve iliştirilen belgeyi yerleştirme yerine başvurulan belgeyi kullanarak devam ettirmek istiyorum. Örneğin , belge aşağıda gibidir:Couchbase

{ 
    title: "Some Title", 
    pages: 123, 
    publisher: { 
       name: "O'Reilly Media", 
       location: "CA" 
      } 
} 

Ama hiç böyle belgeleri istiyorum:

{ 
    _id: "oreilly", 
    name: "O'Reilly Media", 
    location: "CA" 
} 

{ 
    _id: 123456789, 
    title: "Some Title", 
    pages: 123, 
    publisher_id: "oreilly" 
} 

Ben verileri temsil etmek 2 farklı sınıflar var ve ek açıklamaları @Document kullanıyorum ve @Field. Zaten @ManyToOne ek açıklamasını denedim ama işe yaramadı.

cevap

2

Şu anda Spring Data Couchbase'de @ManyToOne tipi belge ilişkileri desteği bulunmamaktadır. Daha da önemlisi, bu açıklama JPA tarafından sağlanır ve Spring Verisinin kendisinin bir parçası değildir (Yay Verilerini destekleyen tüm mağazalarda ortak bir şey değildir). 1.3.2 oldukça eski bir sürümü ve Bahar Veri Couchbase konnektörü o zamandan bu yana neredeyse tamamen 2.0.0 yılında yeniden yazılmıştır (ve 2.1.0 köşede) o

Not.

Bu 2.0.0 sürümünde, Spring Data Couchbase özelliklerinde bazı önemli yükseltmeler yapıldı ve alt nesnelerin ayrılmış belgeler olarak depolanması fikri bir fikir olarak atıldı. Bunu gelecekteki bir sürümde yapabilir, ancak bunun için kesin bir yol haritası yoktur. Düzenleme: Bu özellik eklenirse, en az 2.2.0 sürümüne sahip olmaz.

+0

Merhaba Simon, Yardımlarınız için teşekkür ederiz. Belgelerim zaten sofabase'de saklandığını düşünürsek, Spring'e, alt nesnelerin bir okuma işleminde ayrı belgelerde olduğunu söylemenin bir yolunu biliyor musunuz? –

+0

maalesef, ben yok –

+0

Tamam, ama hala bir şüphe var. Dairesel bir referansım varsa ne olur? Bahar alt nesneleri tekrarlı olarak yerleştirecek mi? –