Java 无法使用spring数据连接到基于MongoDB Atlas的数据库

Java 无法使用spring数据连接到基于MongoDB Atlas的数据库,java,spring,mongodb,spring-data-mongodb,Java,Spring,Mongodb,Spring Data Mongodb,我们正在为我们的一个应用程序评估MongoDB Atlas云。。我们在连接到DB时遇到问题。。(Mongo shell正在连接,我们可以导入数据) 我们使用springmongo()并使用以下配置 配置: <mongo:mongo-client id="mongoClient" host="${mongo.host}" port="${mongo.port}" credentials="MONGO_USER:MONGO_PASS@MONGO_DB" > <mo

我们正在为我们的一个应用程序评估MongoDB Atlas云。。我们在连接到DB时遇到问题。。(Mongo shell正在连接,我们可以导入数据)

我们使用springmongo()并使用以下配置

配置:

<mongo:mongo-client id="mongoClient" host="${mongo.host}" port="${mongo.port}" credentials="MONGO_USER:MONGO_PASS@MONGO_DB"  >
        <mongo:client-options connections-per-host="50" threads-allowed-to-block-for-connection-multiplier="5000" />
     </mongo:mongo-client>
     <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
         <constructor-arg ref="mongoClient"/>
         <constructor-arg name="databaseName" value="${mongo.dbname}"/>
    </bean>

结果: com.mongodb.mongoscocketreadException:过早到达流的末尾

(大写值替换为实际配置参数。)

我们如何解决这个问题?
感谢使用URI时确保将authenticationDB声明为“admin”db

你的基于java的应用程序根本无法连接?或者你在一段时间的不活动后得到这个异常?您正在使用SSL连接吗?如果您能为我们提供完整的stacktrace,那将非常有帮助。@RafalG。这根本没有联系。。我们正在使用SSLSo,如果它是SSL,那么请记住,JVM必须了解所有证书、密钥库等。如果你使用一个普通的shell,它已经实现了它所需要的一切。您的JVM没有。研究从JVM到MongoDB的SSL连接问题。Spring数据Mongo与此无关。