Springプロジェクトでは、Spring Data MongoDBを使用しており、次の2つのクラスがあります。
public class ClassA
{
@Id
private String id;
private String description
@DBRef
private ClassB classBId;
// Getters and Setters
}
public class ClassB
{
@Id
private String id;
private String description
// Getters and Setters
}
そのため、classAとclassBの2つのコレクションがあり、それらにいくつかのインスタンスを設定しました。
classAインスタンスは次のように保存されます。
{"_id":{"$ oid": "5086b371004d7c4bfff0a142"}、 "_class": "com.spring.custom.ClassA"、 "description": "Description A"、 "classBId":{"$ ref": " classB "、" $ id ":{" $ oid ":" 50866d45004d84852b16a8b8 "}}}
私の質問は、ID 50866d45004d84852b16a8b8のclassBインスタンスを参照するすべてのclassAオブジェクトを返すクエリを作成するにはどうすればよいですか?
私はこのように試しましたが、成功しませんでした:
ClassB cb = new ClassB(); cb.setId("50866d45004d84852b16a8b8");
Criteria criteria = Criteria.where("classBId").is(classBObject);
Query query = new Query(); query.addCriteria(criteria);