SpringBoot实现整合MongoDB的方法

  介绍

这篇文章将为大家详细讲解有关SpringBoot实现整合MongoDB的方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

SpringBoot可以非常方便地引入和操作MongoDB。本节分两部分,记录个人学习SpringBoot使用MongoDB数据库的一些知识。

第一部分是一个简单的SpringBoot连接蒙戈的演示,测试查询功能。

第二部分是基于mongo实现的增删改查数据示例。

本节使用SpringBoot 2.1.9。发布

<强>一,一个简单的演示

首先来演示SpringBoot项目引入MongoDB,以及一个简单的findAll操作。

maven依赖:

& lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-data-mongodb   & lt;/dependency>

环境配置:

应用程序。yml文件中写入如下配置,测试表示MongoDB中的测试表

春:   数据:   mongodb:   uri:“mongodb://localhost: 27017/test"

以一个bean类为例:

 com . example,包
  
  公开课用户{
  
  私人字符串id;
  私人字符串名称;
  私人整数年龄;
  私人整数级;//雎詆etter和setter//重写它的toString方法
  @Override
  公共字符串toString () {
  返回“用户{“;+
  “id=& # 39;“+身份证+ & # 39;\ & # 39;& # 39;+
  “name=& # 39;“+名字+ & # 39;\ & # 39;& # 39;+
  “,年龄=?+年龄+
  年级“=?+年级+
  & # 39;}& # 39;;
  }
  }

在MongoDB数据库中新建一个集合(也就是表),名字叫用户,插入几条数据,比如:

 SpringBoot实现整合MongoDB的方法

注:这里用的可视化工具是无袖长衫3 t: https://www.jb51.net/database/567493.html

我们这里先默认JavaBean的字段与用户表的字段名保持一致。

下面我们编写测试类:

@SpringBootTest   @RunWith (SpringRunner.class)   公开课MongoTest {      @ autowired   私人MongoTemplate MongoTemplate;      @Test   公共空间test1 () {   ListuserList=mongoTemplate.findAll (User.class);   如果(userList !=零,,userList.size()比;0) {   userList。forEach(用户→{   System.out.println (user.toString ());   });   }   }      }

运行测试类,输出如下:

用户{id=& # 39; 5 d243534514701183f5fcab8& # 39;, name=& # 39; zf0& # 39;,=12岁年级=1}   用户{id=& # 39; 5 d243534514701183f5fcab9& # 39;, name=& # 39; zf1& # 39;,=13岁年级=2}   用户{id=& # 39; 5 d243534514701183f5fcaba& # 39;, name=& # 39; zf2& # 39;,=14岁年级=3}   用户{id=& # 39; 5 d243534514701183f5fcabb& # 39;, name=& # 39; zf3& # 39;,=15岁=4年级}   用户{id=& # 39; 5 d243534514701183f5fcabc& # 39;, name=& # 39; zf4& # 39;,=16岁=5年级}

<强>二,基于SpringBoot的MongoDB增删改查操作

下面来实现一个基于SpringBoot的对MongoDB增删改查操作的简单示例,依然使用上面的环境:maven:

& lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-web   & lt;/dependency>      & lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-test   & lt; scope> test   & lt;/dependency>      & lt; dependency>   & lt; groupId> org.springframework.boot   & lt; artifactId> spring-boot-starter-data-mongodb   & lt;/dependency>      & lt; dependency>   & lt; groupId> com.alibaba   & lt; artifactId> fastjson   & lt; version> 1.2.60   & lt;/dependency>

yml:

服务器:   端口:8866      春天:   数据:   mongodb:   uri:“mongodb://localhost: 27017/test"用户类:

这里我们清楚一下之前的数据,把mongo里的用户表里的数据全部删掉。

 SpringBoot实现整合mongodb的方法

注:这里用的可视化工具admin-mongo: https://github.com/mrvautin/adminMongo

 SpringBoot实现整合mongodb的方法

新建一个不同的用户类:

@Document (“user")   公开课用户{      @ id   私人字符串id;      @Field (“name")   私人字符串名称;      @Field (“password")   私人密码字符串;      @Field (“address")   私人字符串地址;      @Field (“create_time")   私人createTime日期;      @Field (“last_update_time")   私人lastUpdateTime日期;//雎詆etter和setter方法      @Override   公共字符串toString () {   返回JSONObject.toJSONString(这个);   }   }

SpringBoot实现整合MongoDB的方法