多语言展示
当前在线:840今日阅读:91今日分享:37

Spring中如何通过MongoTemplate操作MongoDB

MongoDB是一款文档型NOSQL(Not Only SQL)数据库,其支持水平扩展,通过其提供的 shard 和 copy 机制可以比较容易的应对大数据量的业务场景。对于 Spring 而言,其通过 Spring Data MongoDB 提供了和 MongoDB 交互的相关API,本篇经验就分享一下如何通过 MongoTemplate 来操作 MongoDB。本篇经验需要使用MongoDB数据库,关于如何通过Docker快速安装一套可用的MongoDB数据库,请参考如下经验。 0Docker 如何安装、启动、配置 MongoDB
工具/原料

SpringBoot, Eclipse

方法/步骤
1

Spring Initializr 创建一个 SpringBoot 项目,必须的依赖包括:Spring Data MongoDB 和 Lombok。

2

启动本地MongoDB服务(基于Docker容器),通过如下步骤创建数据库和拥有读写权限的账号:1. 运行 docker exec -it 容器名称 bash ,进入MongoDB容器内部2. 运行 mongo -u 用户名 -p 密码 , 连接到 MongoDB 的服务3. 运行 use 数据库名称 ,会自动创建并切换到对应数据库上4. 通过运行 db.createUser(具体参数请参考截图2)  创建有读写权限的账号

3

配置MongoDB的连接信息 在 resources 目录中的 application.properties 添加如下配置:spring.data.mongodb.uri=mongodb://账号名称:密码@IP:端口/数据库名称

4

创建实体类和关系型数据库一样,MongoDB也作为数据持久层来使用,我们定义一个实体类,将该实体类对象存储在MongoDB数据库的表中。注意:实体类需要使用 MongoDB 提供的 @Document 注解进行标注,并且需要通过 @Id 注解指明一个主键字段。

5

启动类编写测试代码启动类实现 CommandLineRunner 接口,在重写的 run 方法中,调用注入的 MongoTemplate 对象的增加、查询、修改、删除方法,并观察控制台的输出。

推荐信息