[英]How to reference an embedded document in mongodb using SpringData
如何在mongodb中引用嵌入式文檔?
想象一下,我有一個Question and AnswerOptions文檔,我想將用戶答案保存到UserAnswer文檔中。
現在,我該如何指向嵌入的AnswerOptions文檔中的該選項?
有最佳做法嗎?
{
"_id":"1"
"questionTitle":"Question1"
"answerOptions":
[
{
"optionTitle":"option1"
},
{
"optionTitle":"option2"
},
{
"optionTitle":"option3"
}
]
},
{
"_id":"2"
"questionTitle":"Question2"
"answerOptions":
[
{
"optionTitle":"option1"
},
{
"optionTitle":"option2"
}
]
},
{
"_id":"3"
"questionTitle":"Question3"
"answerOptions":
[
{
"optionTitle":"option1"
},
{
"optionTitle":"option2"
}
]
}
我不知道我的方式是否被視為最佳做法,但這是我的做法:
public class Question {
private String id;
private String questionTitle;
private List<Answer> answerOptions;
}
public class Answer {
private String optionTitle;
}
現在,您可以定義一個MongoRepository來查詢問題:
public interface QuestionRepository extends MongoRepository<Question,String> {
List<Question> findByAnswerOptionsOptionTitle(@Param("answerOptions.optionTitle") String option)
}
您可能還會發現有關MongoRepositories中的查詢的部分很有用: http ://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#repositories.query-methods.query-property-expressions
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.