我们正在使用Spring Data Mongo Repositories来存储/检索文档。以下是我们拥有的类的Java结构:
抽象类A->具体类B和C
我们使用save()方法编写文档。当保存文档时,会保存“_class”变量,该变量存储了类路径。
现在,当我们尝试查询数据时,我们得到了B和C类的文档。以下是示例:
当我们调用这个方法时,列表里(令人惊讶的是)也包含了C类的对象。可能是因为B和C有一个相同名称的属性。
我的问题是,如果我们想要限制结果只返回特定的类,使用Mongo repository是否可行?我们尝试使用findBy_Class、findByClass,但它抛出了一个异常,说无法在“B”中找到“class”成员。
难道返回类型(例如List<B>)不能帮助过滤对象吗?您有什么想法吗?
提前感谢您。
public List<B> findByName (String name);
当我们调用这个方法时,列表里(令人惊讶的是)也包含了C类的对象。可能是因为B和C有一个相同名称的属性。
我的问题是,如果我们想要限制结果只返回特定的类,使用Mongo repository是否可行?我们尝试使用findBy_Class、findByClass,但它抛出了一个异常,说无法在“B”中找到“class”成员。
难道返回类型(例如List<B>)不能帮助过滤对象吗?您有什么想法吗?
提前感谢您。