gpt4 book ai didi

java - MongoClient.getDatabase() 是只返回一个数据库实例还是实际创建它?

转载 作者:行者123 更新时间:2023-11-29 06:31:00 24 4
gpt4 key购买 nike

为了在 MongoDB 3.2 中创建数据库实例,您必须编写如下内容:

new MongoClient().getDatabase("dbName");

据官方MongoDB Java API 3.2这应该会返回一个数据库实例。

我的问题:

  1. 我是否理解正确,如果具有指定名称的数据库不存在,MongoDB 会为我创建它?

  2. 如果问题 #1 的假设是正确的,那么如果我尝试请求同一个数据库两次,会发生什么情况?它会只返回已经存在的实例还是会删除现有实例并创建一个新实例?

附言你能不能给我一个好的和更新 MongoDB for Java 手册/教程,我用谷歌搜索了其中的几个,但它们不是那么更新。

最佳答案

3.1.1 驱动程序中:

调用 getDatabase 实际上并没有创建新的数据库,因为操作是惰性的——它返回数据库表示。调用任何可修改的操作(例如 createCollection):

  1. 如果数据库不存在,将为您创建新的数据库
  2. 如果存在,它将为您获取数据库

但请记住,您必须调用任何实际执行某些操作的操作 - 例如创建。如果您只是调用 getDatabase,它不会创建它。

关于java - MongoClient.getDatabase() 是只返回一个数据库实例还是实际创建它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33902181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com