原创 SpringBoot轻松整合MongoDB

发布时间:2021-06-18 02:10:06 浏览 986 来源:猿笔记 作者:消灭知识盲区

    #贡献主题:如有疑问请私信联系、下方有源代码地址。请自行拿取:MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富“最像关系数据库的”提示。以下是本篇文章正文内容,下面案例可供参考:#一、技术介绍,MongoDB(来自于英文单词,中文含义为,庞大。)是可以应用于各种规模的企业、各个行业以及各类应用程序的开源数据库,作为一个适用于敏捷开发的数据库。MongoDB的数据模式可以随着应用程序的发展而灵活地更新。它也为开发人员提供了传统数据库的功能。二级索引。


    #主题列表:juejin,github,smartblue,cyanosis,channing-cyan,fancy,hydrogen,condensed-night-purple,greenwillow,v-green,vue-pro,healer-readable,mk-cute,jzman,geek-black,awesome-green,qklhk-chocolate

    #投稿主题:

    theme:juejin

    highlight:

    \ u 003 font color = # 999 AAA >提示:如有疑问,请私信联系。如果你有下面的源代码地址,请自己拿。

    #前言

    MongoDB是关系数据库和非关系数据库之间的产物,是非关系数据库中功能最强、最像关系数据库的。

    \ u 003 font color = # 999 AAA >提示:以下是本文的主要内容,以下案例可供参考

    # 1.技术介绍

    ##1.MongoDB是什么?

    MongoDB(来自英文单词“Humongous”,中文意思是“巨大”)是一个开源数据库,可以应用于各种规模、行业和应用的企业。作为一个适合敏捷开发的数据库,MongoDB的数据模式可以随着应用的发展而灵活更新。同时也为开发者提供了传统数据库的功能:二级索引、完整的查询系统、严格的一致性等。MongoDB可以使企业更加敏捷和可扩展。各种规模的企业都可以使用MongoDB创建新的应用程序,提高与客户的工作效率,加快上市时间,降低企业成本。

    MongoDB是一个为可伸缩性、高性能和高可用性而设计的数据库。它可以从单服务器部署扩展到大型复杂的多数据中心架构。MongoDB凭借内存计算的优势,可以提供高性能的数据读写操作。MongoDB的本地复制和自动故障转移功能使您的应用程序具有企业级的可靠性和操作灵活性。

    #二。使用步骤

    ##1.引入maven库

    代码如下(示例):

    c\t\torg.springframework.boot\tspring-boot-starter-parent\t2.4.1\t\torg.springframework.bootspring-boot-starter-data-mongodb

    ##2.具体使用示例

    MongoDB封装:

    c/***mongodb助手**@Author:heyuhua*@Date:2021/1/199:52*/@ComponentpublicclassMongoDBHelper{@AutowiredprivateMongoTemplatemongoTemplate;/***保存**@paramt*@param*@return*/publicTsave(Tt){returnmongoTemplate.save(t);}/***保存**@paramt*@paramcollectionName*@param*@return*/publicTsave(Tt,StringcollectionName){returnmongoTemplate.save(t,collectionName);}/***查询**@paramquery*@paramtClass*@param*@return*/publicListfind(Queryquery,ClasstClass){returnmongoTemplate.find(query,tClass);}/***查询所有**@paramtClass*@param*@return*/publicListfindAll(ClasstClass){returnmongoTemplate.findAll(tClass);}}

    ##3.配置文件

    代码如下(示例):

    cserver:port:8088spring:#mongodb配置data:mongodb:uri:mongodb://admin:admin@127.0.0.1:27017/admin##4.单元测试

    测试代码如下(示例):

    c

    packagecom.hyh.core.test;

    importcom.hyh.core.test.base.HyhTest;

    importcom.hyh.core.test.po.Person;

    importcom.hyh.mongodb.helper.MongoDBHelper;

    importorg.junit.Test;

    importorg.springframework.beans.factory.annotation.Autowired;

    importorg.springframework.data.mongodb.core.query.Criteria;

    importorg.springframework.data.mongodb.core.query.CriteriaDefinition;

    importorg.springframework.data.mongodb.core.query.Query;

    importorg.springframework.data.mongodb.core.query.TextCriteria;

    importjava.util.List;

    /**

    *MongoDbTest

    *

    *@Author:heyuhua

    *@Date:2021/1/1910:28

    */

    publicclassMongoDBTestextendsHyhTest{

    @Autowired

    privateMongoDBHelpermongoDBHelper;

    @Test

    publicvoidtestSave(){

    Personperson=newPerson();

    person.setName("heyuhua");

    person.setAge(25);

    mongoDBHelper.save(person);

    Personperson2=newPerson();

    person2.setName("hyh");

    person2.setAge(52);

    mongoDBHelper.save(person2);

    }

    @Test

    publicvoidtestSaveCollection(){

    Personperson=newPerson();

    person.setName("heyuhua");

    person.setAge(25);

    mongoDBHelper.save(person,"personCollection");

    Personperson2=newPerson();

    person2.setName("hyh");

    person2.setAge(52);

    mongoDBHelper.save(person2,"personCollection");

    }

    @Test

    publicvoidtestFindAll(){

    Listlist=mongoDBHelper.findAll(Person.class);

    for(Personperson:list){

    System.out.println("name="+person.getName()+",age="+person.getAge());

    }

    }

    @Test

    publicvoidtestFind(){

    Criteriacriteria=newCriteria();

    criteria.and("age").gte("25");

    Queryquery=newQuery(criteria);

    Listlist=mongoDBHelper.find(query,Person.class);

    for(Personperson:list){

    System.out.println("name="+person.getName()+",age="+person.getAge());

    }

    }

    @Test

    @Override

    publicvoidtest(){

    System.out.println("---MongoDbTest---");

    }

    }

    #总结

    源代码地址:【点击此处查看源代码】(

作者信息

消灭知识盲区 [等级:3] Java
发布了 16 篇专栏 · 获得点赞 245 · 获得阅读 29108

相关推荐 更多