1. 坐标引入依赖
<dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-data-mongodb</artifactId></dependency>
  1. 降级积木报表
    jeecgboot2.4.6/3.0等版本集成mongodb会报mongoTemplate谬误,官网曾经提供了解决方案,将积木报表降级到最新版即可。
<dependency>    <groupId>org.jeecgframework.jimureport</groupId>    <artifactId>jimureport-spring-boot-starter</artifactId>    <version>1.4.2</version></dependency>

之后在application-dev.yml文件中,退出mongoDb的配置项

spring:  data:    mongodb:      uri: mongodb://localhost:27017/springboot-db
  1. 创立实体类
package org.jeecg.modules.mongodb.entity;import org.springframework.data.annotation.Id; public class Customer {     @Id    public String id;     public String firstName;    public String lastName;     public Customer() {}     public Customer(String firstName, String lastName) {        this.firstName = firstName;        this.lastName = lastName;    }     @Override    public String toString() {        return String.format(                "Customer[id=%s, firstName='%s', lastName='%s']",                id, firstName, lastName);    } }
  1. 创立Repository
package org.jeecg.modules.mongodb.dao; import org.jeecg.modules.mongodb.entity.Customer;import org.springframework.data.mongodb.repository.MongoRepository; import java.util.List; public interface CustomerRepository extends MongoRepository<Customer, String> {      Customer findByFirstName(String firstName);     List<Customer> findByLastName(String lastName); }
  1. 测试用例
    用两种形式测试mongoDB,别离为MongoRepository和MongoTemplate
package org.jeecg.modules.mongodb; import org.jeecg.common.api.vo.Result;import org.jeecg.modules.mongodb.dao.CustomerRepository;import org.jeecg.modules.mongodb.entity.Customer;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.mongodb.core.MongoTemplate;import org.springframework.web.bind.annotation.*; import java.util.HashMap;import java.util.Map;  /** * 测试mongodb */@RestController@RequestMapping("/mongo")public class MongoController {     @Autowired    private MongoTemplate mongoTemplate;    @Autowired    private CustomerRepository repository;     @GetMapping("/test1")    public Result<?> TestMongoDb(){        Map<String,String> map = new HashMap<>();        map.put("jeecg","mongodb-jeecg");        mongoTemplate.insert(map, "testMongoDb");         return Result.OK("存入胜利");    }     @GetMapping("/test2")    public Result<?> TestMongoDb2(){        repository.deleteAll();         // save a couple of customers        repository.save(new Customer("Alice", "Smith"));        repository.save(new Customer("Bob", "Smith"));         // fetch all customers        System.out.println("Customers found with findAll():");        System.out.println("-------------------------------");        for (Customer customer : repository.findAll()) {            System.out.println(customer);        }        System.out.println();         // fetch an individual customer        System.out.println("Customer found with findByFirstName('Alice'):");        System.out.println("--------------------------------");        System.out.println(repository.findByFirstName("Alice"));         System.out.println("Customers found with findByLastName('Smith'):");        System.out.println("--------------------------------");        for (Customer customer : repository.findByLastName("Smith")) {            System.out.println(customer);        }         return Result.OK("存入胜利");    } }
  1. 测试后果
    测试后的数据库截图