【发布时间】:2015-03-02 16:15:55
【问题描述】:
Spring Data 是否以不同的方式处理 mongo 嵌套的“id”属性?我解释了我的问题:我的集合 matches 具有以下结构
"teams": [
{
"id" : "5601",
"name" : "FC Basel"
},
... // more
]
当我想检索所有团队 ID 为 5601 的比赛时,我执行以下查询
db.matches.find({ "teams.id" : "5601"})
完美运行并返回一些对象。
当我做一个方法时
public List<MatchMongo> findByTeams_id(String id);
在我的 MatchRepository 界面上,我得到了 0 个结果。 日志显示
Created query Query: { "teams.id" : "5601"}, Fields: null, Sort: null
find using query: { "teams.id" : "5601"} fields: null for class: class
MatchMongo in collection: matches
所以他提出的问题似乎是正确的......:S 尝试使用其他字段(例如,referee.name)有效。
我什至尝试使用 @Query 注释,但无法让它工作
还有其他解决方案吗?这是一个错误还是我做错了什么?
【问题讨论】:
-
在 TeamsRepository 中调用 findById 是否有效?
标签: spring mongodb spring-data spring-data-mongodb