技术编程|SpringBoot怎么整合MongoDB?

之前我们讲解了MongoDB在不同环境的安装和MongoDB的CRUD以及Robo3T可视化工具操作MongoDB , 今天我们来看看实际业务中整合MongoDB的场景 。本文我们主要是通过两种方法实现SpringBoot整合MongoDB , 最后写一个小demo来理解MongoDB在实际业务中的应用 。整合新建项目
新建一个SpringBoot项目 , 只需要勾选SpringWeb和SpringDataMongoDB的模块即可
技术编程|SpringBoot怎么整合MongoDB?
文章图片

文章图片

通过Robo3T连接MongoDB数据库 , 确保数据库可用 , 也可以实时监测数据库情况 。如果还没有配置Robo3T的可以看我这一篇博客
技术编程|SpringBoot怎么整合MongoDB?
文章图片

文章图片

在MongoDB中新建一个databases , 一会儿要用 。SpringBoot中配置类
因为MongoDB默认是无密码的 , 我们这边没密码就空着#写服务器地址 , 本地就localhostspring.data.mongodb.host=localhost#用户名密码不同的库需要不同的认证 , 这里是在admin库中spring.data.mongodb.authentication-database=admin#有账户和密码就写 , 没有就空着spring.data.mongodb.username=spring.data.mongodb.password=spring.data.mongodb.port=27017#这里写刚才创建的数据库spring.data.mongodb.database=feng
我们先用MongoRepository接口来实现整合的方法
在项目中创建一个实体类packagecom.feng.pojo;/***
spirngboot-mongodb-test
***@author:Nicer_feng*@date:2020-10-1209:34**/publicclassUser{privateIntegerid;privateStringname;publicIntegergetId(){returnid;}publicvoidsetId(Integerid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicUser(Integerid,Stringname){this.id=id;this.name=name;}@OverridepublicStringtoString(){return"User{"+"id="+id+",name='"+name+'\''+'}';}}
创建一个UserDao接口 , 这个接口要继承MongoRepository接口
我们可以发现MongoRepository接口中已经封装好了一些基础的方法 , 查询 , 增加等
技术编程|SpringBoot怎么整合MongoDB?
文章图片

文章图片

UserDao.javapackagecom.feng.dao;importcom.feng.pojo.User;importorg.springframework.data.mongodb.repository.MongoRepository;/***
spirngboot-mongodb-test
***@author:Nicer_feng*@date:2020-10-1209:35**/publicinterfaceUserDaoextendsMongoRepository
{//啥也不用干 , 继承上面那个接口就行}
然后我们去测试类测试增加数据测试连接和插入packagecom.feng;importcom.feng.dao.UserDao;importcom.feng.pojo.User;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;@SpringBootTestclassSpirngbootMongodbTestApplicationTests{@AutowiredUserDaouserDao;@TestvoidcontextLoads(){}@TestpublicvoidaddUser(){Useruser=newUser();user.setId(1);user.setName("feng");userDao.insert(user);}}
运行测试方法 , 可以发现测试成功
技术编程|SpringBoot怎么整合MongoDB?
文章图片

文章图片

在Robo3T中查询数据库 , 发现增加数据成功


推荐阅读