Spring mongo注释类型DBRef的属性lazy未定义
我将mongodb与spring一起使用,并使用maven添加了spring数据mongodbSpring mongo注释类型DBRef的属性lazy未定义,spring,mongodb,spring-mongo,spring-mongodb,Spring,Mongodb,Spring Mongo,Spring Mongodb,我将mongodb与spring一起使用,并使用maven添加了spring数据mongodb <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-mongodb</artifactId> <version>1.4.0.RELEASE</version&g
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
org.springframework.data
spring数据mongodb
1.4.0.1发布
我试图使用@DBRef lazy load,但出现错误
@DBRef(lazy = true)
private List<Bill> shoppingHistory = new ArrayList<>();
@DBRef(lazy=true)
private List shoppingHistory=新建ArrayList();
我的错误是
注释类型DBRef的属性lazy未定义
我只能使用数据库属性
有人能帮我解决这个问题吗?解决这个问题的最好办法是根本不要使用
DBRef
。它是一种旧的“建议”解决方案,用于表示指向其他集合或其他数据库中其他文档的链接。问题是,它确实工作得很好,而且实际上根本不支持自规范首次发布以来引入的新功能。您最好使用普通的ObjectId
值,并在“应用程序模型”中实际定义“关系”。“连接”现在可以在MongoDB的现代版本中使用。而“懒惰”的最佳处理方式是在请求需要时向相关数据发出另一个查询。请注意,DBRef
根本不受现代操作(如$lookup
其他相关操作)的支持,也没有任何计划包含此类支持。因此实际上,DBRef
与您得到的一样“不推荐”,没有实际的“官方”不推荐通知。在现代运营中,它没有被使用或考虑,我认为在将来的某个时候,它可能会被正式弃用。