springboot操作mongodb

本文介绍了springboot集成MongoDB的实例,springboot操作mongodb需要哪些jar包,springboot连接MongoDB如何配置,springboot操作mongodb代码

首先需要在springboot项目中引入mongodb的相关java包配置

 <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>

mongodb连接配置

server:
  port: 8088


spring:
  #mongodb配置
  data:
    mongodb:
      uri: mongodb://admin:admin@127.0.0.1:27017/admin

mongodb操作类封装

@Component
public class MongoDBUtil {
 
    @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> List<T> find(Query query, Class<T> tClass) {
        return mongoTemplate.find(query, tClass);
    }
 
    /**
     * 查询所有
     *
     * @param tClass
     * @param <T>
     * @return
     */
    public <T> List<T> findAll(Class<T> tClass) {
        return mongoTemplate.findAll(tClass);
    }
 
 
}

测试代码

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 MongoDBUtil mongoDBUtil;
 
 
    @Test
    public void testSave() {
        Person person = new Person();
        person.setName("heyuhua");
        person.setAge(25);
        mongoDBUtil.save(person);
        Person person2 = new Person();
        person2.setName("hyh");
        person2.setAge(52);
        mongoDBUtil.save(person2);
    }
 
    @Test
    public void testSaveCollection() {
        Person person = new Person();
        person.setName("heyuhua");
        person.setAge(25);
        mongoDBUtil.save(person, "personCollection");
        Person person2 = new Person();
        person2.setName("hyh");
        person2.setAge(52);
        mongoDBUtil.save(person2, "personCollection");
    }
 
    @Test
    public void testFindAll() {
        List<Person> list = mongoDBUtil.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);
        List<Person> list = mongoDBUtil.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---");
    }
 
 
}

更多关于mongodb详细资料参考:mongodb教程

上一篇 下一篇


推荐文章

评论
说点什么吧?

发表评论

取消回复
  最新文章