目錄
- 一、技術介紹
- 二、使用步驟
- 1.引入maven庫
- 2.具體使用示例
- 3.配置文件
- 4.單元測試
- 總結
一、技術介紹
1.MongoDB是什么?
MongoDB(來自于英文單詞“Humongous”,中文含義為“龐大”)是可以應用于各種規(guī)模的企業(yè)、各個行業(yè)以及各類應用程序的開源數(shù)據(jù)庫。作為一個適用于敏捷開發(fā)的數(shù)據(jù)庫,MongoDB的數(shù)據(jù)模式可以隨著應用程序的發(fā)展而靈活地更新。與此同時,它也為開發(fā)人員 提供了傳統(tǒng)數(shù)據(jù)庫的功能:二級索引,完整的查詢系統(tǒng)以及嚴格一致性等等。 MongoDB能夠使企業(yè)更加具有敏捷性和可擴展性,各種規(guī)模的企業(yè)都可以通過使用MongoDB來創(chuàng)建新的應用,提高與客戶之間的工作效率,加快產(chǎn)品上市時間,以及降低企業(yè)成本。 MongoDB是專為可擴展性,高性能和高可用性而設計的數(shù)據(jù)庫。它可以從單服務器部署擴展到大型、復雜的多數(shù)據(jù)中心架構。利用內(nèi)存計算的優(yōu)勢,MongoDB能夠提供高性能的數(shù)據(jù)讀寫操作。 MongoDB的本地復制和自動故障轉移功能使您的應用程序具有企業(yè)級的可靠性和操作靈活性。
二、使用步驟
1.引入maven庫
代碼如下(示例):
parent>
groupId>org.springframework.boot/groupId>
artifactId>spring-boot-starter-parent/artifactId>
version>2.4.1/version>
relativePath/>
/parent>
dependencies>
dependency>
groupId>org.springframework.boot/groupId>
artifactId>spring-boot-starter-data-mongodb/artifactId>
/dependency>
/dependencies>
2.具體使用示例
MongoDB封裝:
/**
* mongo db助手
*
* @Author: heyuhua
* @Date: 2021/1/19 9:52
*/
@Component
public class MongoDBHelper {
@Autowired
private MongoTemplate mongoTemplate;
/**
* 保存
*
* @param t
* @param T>
* @return
*/
public T> T save(T t) {
return mongoTemplate.save(t);
}
/**
* 保存
*
* @param t
* @param collectionName
* @param T>
* @return
*/
public T> T save(T t, String collectionName) {
return mongoTemplate.save(t, collectionName);
}
/**
* 查詢
*
* @param query
* @param tClass
* @param T>
* @return
*/
public T> ListT> find(Query query, ClassT> tClass) {
return mongoTemplate.find(query, tClass);
}
/**
* 查詢所有
*
* @param tClass
* @param T>
* @return
*/
public T> ListT> findAll(ClassT> tClass) {
return mongoTemplate.findAll(tClass);
}
}
3.配置文件
代碼如下(示例):
server:
port: 8088
spring:
#mongodb配置
data:
mongodb:
uri: mongodb://admin:admin@127.0.0.1:27017/admin
4.單元測試
測試代碼如下(示例):
package com.hyh.core.test;
import com.hyh.core.test.base.HyhTest;
import com.hyh.core.test.po.Person;
import com.hyh.mongodb.helper.MongoDBHelper;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.CriteriaDefinition;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.data.mongodb.core.query.TextCriteria;
import java.util.List;
/**
* MongoDb Test
*
* @Author: heyuhua
* @Date: 2021/1/19 10:28
*/
public class MongoDBTest extends HyhTest {
@Autowired
private MongoDBHelper mongoDBHelper;
@Test
public void testSave() {
Person person = new Person();
person.setName("heyuhua");
person.setAge(25);
mongoDBHelper.save(person);
Person person2 = new Person();
person2.setName("hyh");
person2.setAge(52);
mongoDBHelper.save(person2);
}
@Test
public void testSaveCollection() {
Person person = new Person();
person.setName("heyuhua");
person.setAge(25);
mongoDBHelper.save(person, "personCollection");
Person person2 = new Person();
person2.setName("hyh");
person2.setAge(52);
mongoDBHelper.save(person2, "personCollection");
}
@Test
public void testFindAll() {
ListPerson> list = mongoDBHelper.findAll(Person.class);
for (Person person : list) {
System.out.println("name=" + person.getName() + ",age=" + person.getAge());
}
}
@Test
public void testFind() {
Criteria criteria = new Criteria();
criteria.and("age").gte("25");
Query query = new Query(criteria);
ListPerson> list = mongoDBHelper.find(query,Person.class);
for (Person person : list) {
System.out.println("name=" + person.getName() + ",age=" + person.getAge());
}
}
@Test
@Override
public void test() {
System.out.println("---MongoDb Test---");
}
}
總結
是不是感覺很簡單?更多用法請點擊下方查看源碼,關注我?guī)憬颐馗喔呒売梅?/p>
源碼地址:點此查看源碼.
以上就是SpringBoot整合MongoDB的實現(xiàn)步驟的詳細內(nèi)容,更多關于SpringBoot整合MongoDB的資料請關注腳本之家其它相關文章!
您可能感興趣的文章:- springboot實現(xiàn)將自定義日志格式存儲到mongodb中
- 常用的MongoDB查詢語句的示例代碼
- mongodb中oplog介紹和格式詳析
- SpringBoot整合之SpringBoot整合MongoDB的詳細步驟
- MongoDB安裝使用并實現(xiàn)Python操作數(shù)據(jù)庫
- 淺析MongoDB之安全認證
- 詳解MongoDB的條件查詢和排序
- mongodb的安裝和開機自啟動詳細講解