实体表:
查询操作:
数据库:
操作语句无问题,但一直查询为空,原因是即使没有用@MongoId声明id是主键,它依然会把"id"给当成 "_id"来处理,
在Criteria criteria = new Criteria().andOperator(Criteria.where("id").is(id));这一条操作语句中,很明显我要指明判断的是外键"id","id"的值为16,但它实际去判断的是数据库中的主键"_id","_id"的值为"642942bf358c357b0f9c8d19",所以一直查询为空。
解决方法很简单,更改外键的键名,外键千万不要起id这个名字。