这篇文章将为大家详细讲解有关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数据库中新建一个集合(也就是表),名字叫用户,插入几条数据,比如:
注:这里用的可视化工具是无袖长衫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里的用户表里的数据全部删掉。
注:这里用的可视化工具admin-mongo: https://github.com/mrvautin/adminMongo
新建一个不同的用户类:
@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的方法