资讯专栏INFORMATION COLUMN

Spring XML MongoDB连接配置指定用户名和密码注意事项

YJNldm / 1382人阅读

摘要:背景改成使用用户名和密码连接后修改遗留工程使用配置客户端版本刚开始做了如下的修改增加了用户名和密码后以为可以正常连接但是始终报错奇怪的是终端中可以正常连接于是改成直接使用代码连接发现配置中使用的构造方法已经过期了提示于是改用了

背景:
MongoDB改成使用用户名和密码连接后 修改遗留工程 使用Spring xml 配置

MongoDB客户端版本

        
            org.springframework.data
            spring-data-mongodb
            1.10.3.RELEASE
        

刚开始做了如下的修改




    

增加了用户名和密码后 以为可以正常连接 但是始终报错

com.mongodb.MongoQueryException: Query failed with error code 13 and error message "not authorized on test to execute command { find: "test", filter: { _id: ObjectId("5b75916f266c3a7c0345430f") }, limit: 1, singleBatch: true }" on server 127.0.0.1:27017

奇怪的是 终端中可以正常连接

➜  ~ mongo test  -u test -p 123456
rs0:PRIMARY> db
test
rs0:PRIMARY> show collections
test

于是改成直接使用Java代码连接 发现XML配置中使用的MongoDbFactory构造方法已经过期了

提示

since 1.7. The credentials used should be provided by MongoClient.getCredentialsList().

于是改用了一个未过期的构造方法

MongoClient mongoClient = new MongoClient(new ServerAddress(), ImmutableList.of(MongoCredential.createCredential(username, databaseName, password.toCharArray())));
SimpleMongoDbFactory mongoDbFactory = new SimpleMongoDbFactory(mongoClient, databaseName);
MongoOperations mongoOps = new MongoTemplate(mongoDbFactory);

此时能够成功连接 对应的XML配置为




    
    
    
    
        
    


参考文档
https://docs.spring.io/spring...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19337.html

相关文章

  • Spring Boot 自定义配置文件(三)

    摘要:警告此示例文件仅供参考。在自定义配置属性添加自定义属性在引用这个自定义属性名为密码为注意在获取自定义属性时一定要严格按照配置文件来获取并且里面的字符串一定是花括号花括号里面的表示为里面自定义的字符串,所以本例就是表示为。 简介 上篇我们做了一些简单的运行文件的配置,本篇带领大家来认识常用的一些配置,当然了关于Spring Boot 这些配置太多太多了,如果想了解更多的话直接上官网参考一...

    caoym 评论0 收藏0
  • spring+mongodb的整合

    摘要:版本不支持支持为,如果使用并且使用,则会出现提示,编译出错。扫描的仓库目录,会自动扫描扩展了接口的接口进行注入。 mongodb介绍 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 MongoD...

    warmcheng 评论0 收藏0
  • spring+mongodb的整合

    摘要:版本不支持支持为,如果使用并且使用,则会出现提示,编译出错。扫描的仓库目录,会自动扫描扩展了接口的接口进行注入。 mongodb介绍 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 MongoD...

    gaara 评论0 收藏0
  • 如何整合Spring + SpringBoot + MyBatis + MongoDB

    摘要:我有个定时器,这个注解是让它发现定时器让它去发现你的层如果你在创建项目的时候,忘记勾选某一些依赖的话不要紧,可以在文件里添加依赖。 前言 我之前是学SpringMVC的,后面听同学说SpringBoot挺好用,极力推荐我学这个鬼。一开始,在网上找SpringBoot的学习资料,他们博文写得不是说不好,而是不太详细。我就在想我要自己写一篇尽可能详细的文章出来。 技术栈 Spring S...

    xiaokai 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<