【发布时间】:2018-12-09 13:31:10
【问题描述】:
我正在尝试访问我的 MongoDB 数据库中的一个对象。
我的对象以这种格式存储在 db 中:
{
"_id" : ObjectId("some object id"), // mongodb gives this id
"my_id" : "Given id by myself",
"url" : "Some string data"
}
Myobj 类:
@Document(collection = "MYOBJ")
public class Myobj {
@Id
private ObjectId _id;
private String my_id;
private String url;
// getters and setters and other methods
}
我想使用 my_id 字段获取此对象。在我的存储库中,我有这些:
public interface MyobjRepository extends MongoRepository<Myobj, String> {
Myobj findBy_id(ObjectId _id);
Myobj findByMy_id(String my_id);
}
但它无法构建,它给了我这个错误:
没有找到 Myobj 类型的属性!您指的是“url”吗?
我想它不能区分 my_id 和 _id。如何在不更改数据库中的对象的情况下解决此问题?
如果没有 findByMy_id 方法,它就可以工作。该方法会导致编译错误。
【问题讨论】:
-
仅供参考,您没有使用任何与那里的 JPA API 有关的东西。请不要这样标记它
标签: mongodb spring-boot spring-data-mongodb