Spring Boot Mongodb .yaml 配置
Posted
技术标签:
【中文标题】Spring Boot Mongodb .yaml 配置【英文标题】:Spring boot Mongo DB .yml configuration 【发布时间】:2019-10-15 17:24:21 【问题描述】:当我使用 mysql 和 hibernate 进行 Spring Boot 时,我在 .yml 文件中使用以下配置
spring:
datasource:
url: jdbc:mysql://localhost/userName?zeroDateTimeBehavior=convertToNull
username: userName
password: password
driverClassName: com.mysql.jdbc.Driver
jpa:
show-sql: false
hibernate:
dialect: org.hibernate.dialect.MySQLDialect
format_sql: false
ddl-auto: update
如果是mongoDB而不是mysql和hibernate怎么改?
【问题讨论】:
【参考方案1】:你可以这样做:
spring:
data:
mongodb:
uri: mongodb://yourusername:yourpassword@localhost:27017/yourDB
【讨论】:
【参考方案2】:mongodb 属性都以 spring.data.mongodb 为前缀。对于用户属性,您将使用
spring:
data:
mongodb:
user: test
password: passwordvalue
uri: mongodb://host:27017/db
可用的 mongodb 属性列表在这里:
https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html
您可以在源代码中找到它们在 github 上的加载方式:
https://github.com/spring-projects/spring-boot/blob/v2.1.5.RELEASE/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/mongo/MongoProperties.java
【讨论】:
这个答案当时可能是正确的,但它不适用于当前的 Spring 版本。至少指向正确的文档。您不能同时设置 URI 和用户名/密码,它们是互斥的。另外,username
而不是user
是正确的键。
根据 mongo db,用户名和密码仍然被 mongo 在 mongodb uri 中接受:docs.mongodb.com/manual/reference/connection-string 在春季,他们仍然根据文档接受最新版本的凭据:docs.spring.io/spring-boot/docs/current/reference/html/…
以上是关于Spring Boot Mongodb .yaml 配置的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot2 系列教程理解Spring Boot 配置文件 application.properties