2013-04-08 7 views
6

Mongo und Java Gurus. Unser Team entschied sich für die Volltext-Such-API, die kürzlich in MongoDB eingeführt wurde. Allerdings haben wir Schwierigkeiten beim Ausführen des Befehls mit dem Java MongoDB-Treiber festgestellt.Wie führe ich den Volltextsuchbefehl in MongoDB mit Java Driver aus?

hier ist mein Code verwende ich:

public BasicDBObject find(String search) { 
    BasicDBObject searchCommand = new BasicDBObject(); 

     searchCommand.put("text", new BasicDBObject().append("search", search)); 

     CommandResult commandResult = db.command(searchCommand); 
} 

Dies ist, was ich bekomme, wenn ich

System.out.println(commandResult) 

{ "serverUsed" : "/127.0.0.1:27017" , "errmsg" : "exception: wrong type for field (text) 3 != 2" , "code" : 13111 , "ok" : 0.0 } 

Antwort

11

Entnommen aus einem Beitrag auf der Google-Gruppe (https://groups.google.com/forum/?fromgroups#!topic/mongodb-user/7jWUbunUcFQ) drucken:

final DBObject textSearchCommand = new BasicDBObject(); 
    textSearchCommand.put("text", collectionName); 
    textSearchCommand.put("search", textToSearchFor); 
    final CommandResult commandResult = db.command(textSearchCommand); 

Zeigt genau, wie Sie den Befehl zu formatieren.

+0

Danke Ich denke, das ist der Befehl :) – Adelin

+0

, wie ich Abfrageparameter in db.command hinzufügen kann? – rajeshpanwar