当前位置: 首页 > 编程笔记 >

解释Java MongoDB的预测

能文华
2023-03-14
本文向大家介绍解释Java MongoDB的预测,包括了解释Java MongoDB的预测的使用技巧和注意事项,需要的朋友参考一下

从MongoDb集合中检索数据时,您只能使用投影选择所需的数据。在Java中,您可以在使用projection()方法从集合中读取文档时投影必要的数据。在的结果上调用此方法find(),绕过所需的文件名的名称,如下所示:

projection(Projections.include("name", "age"));

示例

以下Java示例从集合中读取文档,使用投影,我们仅显示name和age字段的值。

import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import com.mongodb.client.model.Projections;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.bson.Document;
import com.mongodb.MongoClient;
public class ProjectionExample {
   public static void main( String args[] ) {
      //创建一个MongoDB客户端
      MongoClient mongo = new MongoClient( "localhost" , 27017 );
      //连接到数据库
      MongoDatabase database = mongo.getDatabase("myDatabase");
      //创建一个收集对象
      MongoCollection<Document>collection = database.getCollection("students");
      Document document1 = new Document("name", "Ram").append("age", 26).append("city", "Hyderabad");
      Document document2 = new Document("name", "Robert").append("age", 27).append("city", "Vishakhapatnam");
      Document document3 = new Document("name", "Rhim").append("age", 30).append("city", "Delhi");
      //插入创建的文档
      List<Document> list = new ArrayList<Document>();
      list.add(document1);
      list.add(document2);
      list.add(document3);
      collection.insertMany(list);
      System.out.println("Documents Inserted");
      collection = database.getCollection("students");
      //检索文件
      FindIterable<Document> iterDoc =
      collection.find().projection(Projections.include("name", "age"));
      Iterator it = iterDoc.iterator();
      while (it.hasNext()) {
         System.out.println(it.next());
      }
   }
}

输出结果

Documents Inserted
Document{{_id=5e8966533f68506911c946dc, name=Ram, age=26}}
Document{{_id=5e8966533f68506911c946dd, name=Robert, age=27}}
Document{{_id=5e8966533f68506911c946de, name=Rhim, age=30}}
 类似资料:
  • 我不知道语法是什么意思。感谢任何帮助。 谢谢你。

  • 正如你所看到的,我的答案是不正确的。我仍然不明白为什么会这样,所以让我们再把一切都过一遍。 创建大小为2的循环队列 入列8,当前队列:8 进入队列8,当前队列:8,8 前端:8(队列没有变化) 进入队列4,当前队列:4,8 出列,当前队列:8 队列1,当前队列:8,1 进入队列1,当前队列:1,1 后面:1(队列没有更改) 为空:false(队列没有更改) 前端:1(队列未更改) 出列,当前队列:

  • 翻译的结果是什么?它会把高级语言变成汇编语言还是机器语言,即二进制代码? 如果是后者,这是否意味着解释语言与介绍集没有关系? 一种语言只能有一个口译员?是因为解释器不做任何优化,所以我们不需要找到更好的解释器吗?

  • 在使用Tomcat时,我一直将视为或的等价物。似乎很自然,可能必须有某种方法来配置web服务器。 但是,我不太理解的用途。例如,在使用JDBC时,为什么必须在中添加,并在中添加包含更多信息的?我可以删除文件并在代码中实例化吗?我问是因为像这样的假设例子有助于我理解。 为什么我必须把这两个都放在那里才能使用JDBC?它们到底在做什么,除了在Java代码中,还有其他方法可以做同样的事情吗?就像我说的,

  • 问题内容: 为简单起见,请设想这种情况,我们有一台2位计算机,它具有一对称为r1和r2的2位寄存器,并且仅适用于立即寻址。 假设位序列 00 表示 添加 到我们的CPU中。也 01 的装置将数据移动到R 1和 10组 的装置将数据移动到R2。 因此,这台计算机和一个汇编器都有一种汇编语言,其中的示例代码将像 简而言之,当我将此代码汇编成本地语言时,文件将类似于: 上面的12位是以下代码的本机代码:

  • 请向我解释为什么我总是得到这个错误: 显然,我只在开发模式下得到它,它不会在我的生产构建中发生,但这非常烦人,我根本不明白在我的开发环境中出现错误不会在prod上显示的好处--可能是因为我缺乏理解。 或者强制使用如下构造函数检测更改:: 但是为什么我总是遇到这个错误呢?我想了解它,这样我就可以避免这些黑客修复在未来。