【问题标题】:How to create a compound text index in MongoDB using java driver如何使用 java 驱动程序在 MongoDB 中创建复合文本索引
【发布时间】:2015-05-23 14:04:52
【问题描述】:

我需要在两个字段上创建复合文本索引。我正在使用java驱动程序。我找到了有关如何为复合字段而不是文本索引创建索引的示例。如何使用 java 驱动程序实现这一目标

【问题讨论】:

    标签: mongodb mongodb-java


    【解决方案1】:

    类似于以下代码行的东西应该可以解决问题(未经测试):

    BasicDBObject obj = new BasicDBObject();
    obj.put("name", 1);
    obj.put("comment", "text");
    collection.ensureIndex(obj);
    

    【讨论】:

      【解决方案2】:

      我建议使用自 java 驱动程序 3.1 版本以来存在的驱动程序 DSL,它也可用于指定索引选项,例如语言、背景等...:

          MongoCollection<Document> myCollection = db.getCollection("my-collection");
          myCollection.createIndex(
                  Indexes.compoundIndex(
                    Indexes.ascending("name"),
                    Indexes.text("comment")),
                  new IndexOptions()                                                             
                    .defaultLanguage("es")
                    .background(true));
      

      【讨论】:

        猜你喜欢
        • 2012-07-14
        • 1970-01-01
        • 2018-12-17
        • 1970-01-01
        • 1970-01-01
        • 2015-10-09
        • 1970-01-01
        • 1970-01-01
        • 2016-04-17
        相关资源
        最近更新 更多