0

私は数ヶ月前に春とmongodbを使い始めました。今まで、Mongotemplate または MongoRepository を使用して複数のコレクションからデータを取得する方法がわかりません。Person と Contacts の 2 つのコレクションがあります。連絡先とともに Customer のリストを取得したいと考えています。Customer は is is _id を持ち、Contact はリレーション ID is customerId を持っているので、データの顧客連絡先の詳細を取得するにはどうすればよいですか。

4

1 に答える 1

0

データには非正規化が必要です。MongoDB の方法を考えてください。対応する「連絡先」とともに「個人/顧客」データを保存する必要があります。これは 1:n の種類の関連付けです。次のスキーマに必要なデータを簡単に保存できます。以下は、「連絡先」の詳細を埋め込んだサンプルの「個人/顧客」ドキュメントです=>

{
 name:"abc",
 age: 35,
 Contact:{[email:"abc1@gmail.com",mobile:123],[email:"abc2@gmail.com",mobile:234]}
}

前述のようにデータを正規化することになると、MongoDB が提供する強力な埋め込み機能を捨てて、コード内で結合を行うことになる傾向があります。

于 2014-11-11T13:55:36.213 に答える