spring data - Mongodb - findBy Method dla zagnieżdżonych obiektów
Mam dwa obiekty domenowe
@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
}
Mój dokument JSON jest taki,
{
"_id" : ObjectId("506d9c0ce4b005cb478c2e97"),
"userId" : 1,
"questions" : [
{
"questionID" : 1,
"type" : "optional"
},
{
"questionID" : 3,
"type" : "mandatory"
}
]
}
Muszę zaktualizować „typ” na podstawie userId i questionId, więc napisałem metodę zapytania findBy wewnątrz niestandardowego interfejsu repozytorium,
public interface CustomRepository extends MongoRepository<PracticeQuestion, String> {
List<PracticeQuestion> findByUserIdAndQuestionsQuestionID(int userId,int questionID);
}
Mój problem polega na tym, że kiedy wykonuję tę metodę z userId jako 1 i questionID jako 3, zwraca całą listę pytań niezależnie od pytania ID. Czy nazwa metody zapytania jest poprawna lub czy należy napisać zapytanie dla zagnieżdżonych obiektów.
Dziękujemy za wszelkie sugestie.