2 つのドメイン オブジェクトがあり、
@Document
public class PracticeQuestion {
private int userId;
private List<Question> questions;
// Getters and setters
}
@Document
public class Question {
private int questionID;
private String type;
// Getters and setters
}
私のJSONドキュメントは次のようなものです、
{
"_id" : ObjectId("506d9c0ce4b005cb478c2e97"),
"userId" : 1,
"questions" : [
{
"questionID" : 1,
"type" : "optional"
},
{
"questionID" : 3,
"type" : "mandatory"
}
]
}
userId と questionId に基づいて「タイプ」を更新する必要があるため、カスタム リポジトリ インターフェイス内に findBy クエリ メソッドを記述しました。
public interface CustomRepository extends MongoRepository<PracticeQuestion, String> {
List<PracticeQuestion> findByUserIdAndQuestionsQuestionID(int userId,int questionID);
}
私の問題は、userId を 1、questionID を 3 としてこのメソッドを実行すると、questionID に関係なく質問リスト全体が返されることです。クエリ メソッド名は有効ですか、またはネストされたオブジェクトのクエリをどのように記述すればよいですか。
提案をありがとう。