mongodb最新版的springboot驱动的字段说明。。。

mongodb最新版的springboot驱动的字段说明。。。 不要再被现在那些旧版本的连接池自定义方案误导了,根本不能用,或者是你还得自己找jar包,现在的springboot-data-mongodb本身就支持连接池,只要在uri上面配置下相关参数就好了,具体的大家自己摸索下,有几个核心的类和大家说一下:
SimpleMongoClientDatabaseFactory 替代了SimplemongoDbFactory类
MongoDatabaseFactory替代了MongoDbFactory 类
MongoClientSettings替代了MongoClientOptions 类

 

目前的MongoClient变成了一个接口类,有MongoClients类来做静态实例化,下面是部分代码截图

#下方为mongodb的配置字段含义和方式,该方式选择的是uri

#表示一个连接字符串 。 连接字符串描述要使用的主机和选项。
#连接字符串的格式为:
#mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database.collection][?options]]
#
#mongodb://是必需的前缀,用于标识这是标准连接格式中的字符串。
#username:password@是可选的。 如果给定,驱动程序将在连接到数据库服务器后尝试登录到数据库。 对于某些身份验证机制,仅指定用户名而未指定密码,在这种情况下,用户名后的“:”也被省略
#host1是连接字符串中唯一需要的部分。 它标识要连接的服务器地址。 在 3.7 中添加了对 Unix 域套接字的支持。 注意:路径必须是 urlencoded 例如: mongodb://%2Ftmp%2Fmongodb-27017.sock和jnr.unixsocket库安装。
#:portX是可选的,如果未提供,则默认为 :27017。
#/database是要登录的数据库的名称,因此仅在使用username:password@语法时才相关。 如果未指定,则默认使用“admin”数据库。
#?options是连接选项。 注意,如果database不存在,还有一个/最后一个主机和之间需要? 介绍选项。 选项是名称=值对,这些对用“&”分隔。 为了向后兼容,“;” 除了“&”之外,还接受作为分隔符,但应视为已弃用。
#使用 mongodb+srv 协议的另一种格式是:
#mongodb+srv://[username:password@]host[/[database][?options]]
#
#mongodb+srv://是此格式的必需前缀。
#username:password@是可选的。 如果给定,驱动程序将在连接到数据库服务器后尝试登录到数据库。 对于某些身份验证机制,仅指定用户名而未指定密码,在这种情况下,用户名后的“:”也被省略
#host是 URI 中唯一需要的部分。 它标识单个主机名,在主机名前加上"_mongodb._tcp"前缀后,从域名服务器查找 SRV 记录。 每个 SRV 记录的主机/端口成为用于连接的种子列表,就像使用普通 mongodb 协议在 URI 中作为主机/端口对提供每个列表一样。
#/database是要登录的数据库的名称,因此仅在使用username:password@语法时才相关。 如果未指定,则默认使用“admin”数据库。
#?options是连接选项。 注意,如果database不存在,还有一个/最后一个主机和之间需要? 介绍选项。 选项是名称=值对,这些对用“&”分隔。 为了向后兼容,“;” 除了“&”之外,还接受作为分隔符,但应视为已弃用。 此外,使用 mongodb+srv 协议,从给定主机的域名服务器中查找 TXT 记录,并且每个记录的文本值都附加到 URI 本身的任何选项之前。 因为任何选项的最后一个指定值获胜,这意味着 URI 上提供的选项将覆盖通过 TXT 记录提供的任何选项。
#支持以下选项(不区分大小写):
#服务器选择配置:
#serverSelectionTimeoutMS=ms :驱动程序在抛出异常之前等待服务器选择成功的时间。
#localThresholdMS=ms :当在多个 MongoDB 服务器中选择发送请求时,驱动程序只会将该请求发送到 ping 时间小于或等于 ping 时间最快的服务器加上本地阈值的服务器。
#服务器监控配置:
#heartbeatFrequencyMS=ms :驱动程序尝试确定集群中每个服务器当前状态的频率。
#副本集配置:
#replicaSet=name :暗示给定的主机是一个种子列表,驱动程序将尝试查找该集合的所有成员。
#连接配置:
#ssl=true|false : 是否使用 TLS 连接。
#tls=true|false : 是否使用 TLS 连接。 取代 ssl 选项
#tlsInsecure=true|false :如果使用 TLS 连接,则此选项启用不安全的 TLS 连接。 目前,这与将 tlsAllowInvalidHostnames 设置为 true 具有相同的效果。 其他放宽 TLS 安全约束的机制必须在应用程序中通过自定义javax.net.ssl.SSLContext来处理
#sslInvalidHostNameAllowed=true|false :是否允许 TLS 连接无效的主机名。
#tlsAllowInvalidHostnames=true|false :是否允许 TLS 连接的无效主机名。 取代 sslInvalidHostNameAllowed 选项
#connectTimeoutMS=ms :在超时之前打开连接需要多长时间。
#socketTimeoutMS=ms :在超时之前,套接字上的发送或接收需要多长时间。
#maxIdleTimeMS=ms :池连接的最大空闲时间。 超过此限制的连接将被关闭
#maxLifeTimeMS=ms :池连接的最长生命周期。 超过此限制的连接将被关闭
#连接池配置:
#maxPoolSize=n :连接池中的最大连接数。
#waitQueueTimeoutMS=ms :线程可以等待连接变为可用的最大等待时间(以毫秒为单位)。
#maxConnecting=n :池可以同时建立的最大连接数。
#写关注配置:
#safe=true|false
#true :驱动程序确保 MongoDB 服务器确认所有写入,否则抛出异常。 (另见w和wtimeoutMS )。
#false :驱动程序不确保所有写入都由 MongoDB 服务器确认。
#journal=true|false
#true :驱动程序等待服务器对磁盘上的日志文件进行分组提交。
#false :驱动程序不会等待服务器将提交分组到磁盘上的日志文件。
#w=wValue
#驱动程序将 { w : wValue } 添加到所有写入命令。 意味着safe=true 。
#wValue 通常是一个数字,但可以是任何字符串,以允许诸如"majority"类的规范
#wtimeoutMS=ms
#驱动程序将 { wtimeout : ms } 添加到所有写入命令。 意味着safe=true 。
#与w结合使用
#读取首选项配置:
#readPreference=enum :此连接的读取首选项。
#枚举值:
#primary
#primaryPreferred
#secondary
#secondaryPreferred
#nearest
#readPreferenceTags=string 。 标记集表示为逗号分隔的以冒号分隔的键值对列表,例如"dc:ny,rack:1 ”。 空格从所有键和值的开头和结尾被剥离。 要指定标签集列表,请使用多个 readPreferenceTags,例如readPreferenceTags=dc:ny,rack:1;readPreferenceTags=dc:ny;readPreferenceTags=
#请注意最后一个的空值,这意味着匹配任何辅助作为最后的手段。
#使用多个 readPreferenceTag 时,顺序很重要。
#maxStalenessSeconds=seconds 。 以秒为单位的最大失效时间。 为了与任何非主要读取首选项一起使用,驱动程序根据服务器 hello 响应中提供的 lastWriteDate 值估计每个辅助节点的陈旧度,并仅选择陈旧度小于或等于 maxStalenessSeconds 的那些辅助节点。 不提供参数或将其显式设置为 -1 表示不应该进行最大过时检查。 最大陈旧功能旨在防止选择严重滞后的服务器。 陈旧估计是不精确的,不应用于尝试选择“最新”的辅助设备。 最小值为 90 秒,或心跳频率加 10 秒,取最大值。
#认证配置:
#authMechanism=MONGO-CR|GSSAPI|PLAIN|MONGODB-X509 :提供凭据时使用的身份验证机制。 默认未指定,在这种情况下,客户端将根据服务器版本选择最安全的可用机制。 对于 GSSAPI 和 MONGODB-X509 机制,不接受密码,只接受用户名。
#authSource=string :身份验证凭据的来源。 这通常是已创建凭据的数据库。 该值默认为在连接字符串的路径部分中指定的数据库。 如果在这两个地方都没有指定数据库,则默认值为“admin”。 仅在使用 MONGO-CR 机制(默认)时才考虑此选项。
#authMechanismProperties=PROPERTY_NAME:PROPERTY_VALUE,PROPERTY_NAME2:PROPERTY_VALUE2 :此选项允许在连接字符串上设置身份验证机制属性。
#gssapiServiceName=string :此选项仅适用于 GSSAPI 机制,用于更改服务名称。 已弃用,请改用authMechanismProperties=SERVICE_NAME:string 。
#服务器握手配置:
#appName=string :设置应用程序的逻辑名称。 客户端可以使用应用程序名称向服务器标识应用程序,用于服务器日志、慢查询日志和配置文件收集。
#压缩机配置:
#compressors=string :从服务器请求的压缩器的逗号分隔列表。 当前支持的压缩器是“zlib”、“snappy”和“zstd”。
#zlibCompressionLevel=integer :代表 zlib 压缩级别的从 -1 到 9 的整数值。 较低的值会使压缩速度更快,而较高的值会使压缩效果更好。
#一般配置:
#retryWrites=true|false 。 如果为 true,驱动程序将在由于网络错误而失败时重试支持的写入操作。 默认为真。
#retryReads=true|false 。 如果为 true,驱动程序将在由于网络错误而失败时重试支持的读取操作。 默认为真。
#uuidRepresentation=unspecified|standard|javaLegacy|csharpLegacy|pythonLegacy 。 有关此参数语义的文档,请参阅MongoClientSettings.getUuidRepresentation() 。 默认为“javaLegacy”,但在下一个主要版本中将更改为“unspecified”。
#directConnection=true|false 。 如果为 true,驱动程序会将连接设置为与主机的直接连接。
#loadBalanced=true|false 。 如果为 true,驱动程序将假定它通过负载平衡器连接到 MongoDB。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值