点击查看【bilibili】

安装 mongodb

MongoDB 是一个免费的开源跨平台面向文档的 NoSQL 数据库程序。

  1. docker run -itd --name mongo -p 27017:27017 mongo:6.0.3 --auth
  • -p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
  • —auth:需要密码才能访问容器服务。
  1. $ docker exec -it mongo mongosh admin
  2. # 创建一个名为 admin,密码为 123456 的用户。
  3. > db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
  4. # 尝试使用上面创建的用户信息进行连接。
  5. > db.auth('admin', '123456')

代码使用

  • 以 UPMS 模块为例子

添加依赖

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-data-mongodb</artifactId>
  4. </dependency>

整合MongoDB实现NOSQL功能 - 图1

配置链接信息

  1. spring:
  2. data:
  3. mongodb:
  4. uri: mongodb://admin:123456@127.0.0.1:27017/admin

代码测试

  • 数据实体 ```java @Data @NoArgsConstructor @AllArgsConstructor public class Demo {

    private String username;

    private String password;

}

  1. - 测试代码
  2. ```java
  3. @SpringBootTest
  4. public class MongoDbTests {
  5. @Autowired
  6. private MongoTemplate mongoTemplate;
  7. @Test
  8. public void add() {
  9. Demo demo1 = new Demo("lengleng1", "!234566");
  10. Demo demo2 = new Demo("lengleng2", "!234566");
  11. Demo demo3 = new Demo("lengleng3", "!234566");
  12. mongoTemplate.insert(demo1);
  13. mongoTemplate.insert(demo2);
  14. mongoTemplate.insert(demo3);
  15. }
  16. }

整合MongoDB实现NOSQL功能 - 图2

高级使用