【问题标题】:Spring data MongoDB full text search with DBRef使用 DBRef 进行 Spring 数据 MongoDB 全文搜索
【发布时间】:2018-04-08 09:31:54
【问题描述】:

我尝试使用 spring data mongodb 进行全文搜索,但遇到了问题。我有 3 个与 @DBRef 相关的文档:

@Data
@Document
@NoArgsConstructor
public class Order {
   @DBRef
   private Client client;
   @DBRef
   private Company company;
   private long time;
   @TextIndexed
   private String type;
   ...
}

@Data
@Document
@NoArgsConstructor
public class Client {
    @TextIndexed
    private String name;
    @TextIndexed
    private String lastName;
    ...
}

@Data
@Document
@NoArgsConstructor
public class Company {
  @TextIndexed
  private String name;
  private String type;
  ...
}

所以我有 OrderRepository,我想在其中实现查询条件,但它不能按我的意愿工作。我的意思是我在 OrderRepository 中进行查询,它只检查所有 @TextIndexed 的顺序。我希望它不仅搜索订单,还搜索相关文档。简而言之,我只想从 OrderRepository 中搜索订单和相关文档。有可能吗?默认情况下,@DBRef 不允许这样做,我不想为每个文档搜索查询创建。例如,我有一个客户名称为 James 的订单。当我仅按名称“James”进行查询时,它应该搜索客户名称为 James 的所有订单。如何做到这一点?谢谢

【问题讨论】:

    标签: spring mongodb spring-boot full-text-search spring-data-mongodb


    【解决方案1】:

    MongoDB 对 DBREF 的使用有很多限制,更好的方法是使用手动引用,如果您使用的是 Spring Data MongoDB,请查看 RelMongo 框架

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-29
      相关资源
      最近更新 更多