Java等效于MongoDB选择查询

Cod*_*les 6 java mongodb

我想检索以下信息:

select names from database where names like 'Jon';
Run Code Online (Sandbox Code Playgroud)

但对于Java中的MongoDB.本质上,它应该返回包含Jon这个词的所有名称,如Jonathan,Jong等.我知道$inMongoDB 中有运算符,但是如何使用Java驱动程序在Java中执行相同操作?我一直在努力寻找它,但一无所获.我试过了query = new BasicDBObject("names", new BasicDBObject("$in", "Jon"));,和query = new BasicDBObject("names", new BasicDBObject("$in", Jon));

但他们都没有工作:(请帮忙!

Phi*_*ipp 10

与SELECT语句等效的MongoDB Java驱动程序将是:

BasicDBObject fields = new BasicDBObject().append("name", 1); // SELECT name
BasicDBObject query = new BasicDBObject().append("name", "Jon"); // WHERE name = "Jon"
DBCursor results = yourCollection.find(query, fields); // FROM yourCollection
Run Code Online (Sandbox Code Playgroud)

如果要搜索字符串的一部分,可以使用$regex运算符:

query = new BasicDBObject("name", new BasicDBObject("$regex", "Jon"));
Run Code Online (Sandbox Code Playgroud)

这将获得名称与正则表达式 匹配的所有对象Jon,这是包含字符串"Jon"的所有内容.