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 {@Idpublic String id;public String firstName;public String lastName;public Customer() {}public Customer(String firstName, String lastName) {this.firstName = firstName;this.lastName = lastName;}@Overridepublic 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 {@Autowiredprivate MongoTemplate mongoTemplate;@Autowiredprivate 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 customersrepository.save(new Customer("Alice", "Smith"));repository.save(new Customer("Bob", "Smith"));// fetch all customersSystem.out.println("Customers found with findAll():");System.out.println("-------------------------------");for (Customer customer : repository.findAll()) {System.out.println(customer);}System.out.println();// fetch an individual customerSystem.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. 测试结果
    测试后的数据库截图



JeecgBoot与MongoDB集成实战文档相关推荐

  1. 涨薪神作,阿里内部火爆的实战文档和搭建项目笔记,你还怕没有项目可做吗

    前言 认识一个事物最好的方式就是首先去了解它的历史. 随着Spring功能的不断丰富,版本的不断迭代发展,Spring 框架渐渐暴露出了一些问题和弊端.例如太多样板化的配置.繁琐复杂的使用过程等,我们 ...

  2. 阿里P8终于总结出:SpringCloud+Docker+Tomcat+Nginx实战文档了

    前言 时间飞逝,转眼间毕业七年多,从事 Java 开发也六年了.我在想,也是时候将自己的 Java 整理成一套体系. 这一次的知识体系面试题涉及到 Java 知识部分.性能优化.微服务.并发编程.开源 ...

  3. MongoDB基本概念学习 - 文档

    MongoDB的概念和关系型数据库概念的对应如下: 数据库对应数据库:表对应集合:行对应文档: mongodb的 文档 大体相当于关系数据库的行: MongoDB中,文档是一组键值(key-value ...

  4. javaee 中文帮助文档_大牛耗时三天整理的:微服务+Nginx+Kubernetes实战文档和面试题...

    前言 十年之前,相信大家掌握了Java EE互联网轻量级框架整合开发 SSM框架SpringMVC+Spring+MyBatis就已经能够轻轻松松找到一份薪资很高的java开发工作了,而如今只会SSM ...

  5. mysql mongodb 事务_MySQL PK MongoDB:多文档事务支持,谁更友好?

    原标题:MySQL PK MongoDB:多文档事务支持,谁更友好? 作者介绍 贺春旸,凡普金科DBA团队负责人,<MySQL管理之道:性能调优.高可用与监控>第一.二版作者,曾任职于中国 ...

  6. spring mongodb内嵌文档查询

    spring mongodb内嵌文档查询 代码示例 简化写法 spring mongodb内嵌文档查询示例. {"name": "zsParent", &quo ...

  7. MongoDB内嵌文档查询

    MongoDB内嵌文档查询 示例数据结构 [{"name": "lisa", "age": 17,"friends": ...

  8. 华为19级专家10年心血终成百页负载均衡高并发网关设计实战文档

    负载均衡(LoadBalance)的字面意思是将工作负载分担到多个工作单元上进行执行,它建立在现有网络结构之上,是构建分布式服务.大型网络应用的关键组件. 近十几年来,负载均衡技术层出不穷,令人眼花缭 ...

  9. 华为19级大佬10年心血终成百页负载均衡高并发网关设计实战文档

    说在前面的话 负载均衡(LoadBalance)的字面意思是将工作负载分担到多个工作单元上进行执行,它建立在现有网络结构之上,是构建分布式服务.大型网络应用的关键组件. 近十几年来,负载均衡技术层出不 ...

最新文章

  1. JS中window.event事件使用详解
  2. 已安装内存和可用内存不一致 4GB内存在win1064位系统中显示为可用 3.87GB解决办法
  3. 北斗导航 | 北三全球电离层延迟修正模型——BDGIM模型(附C源代码)
  4. 考究Hadoop中split的计算方法
  5. c语言查单词小程序,【附源码】小程序初窥之简单查单词
  6. 前端学习(1936)vue之电商管理系统电商系统之再关闭对话框defkeys
  7. LeetCode 944. 删列造序
  8. 国内最缺的架构实践,DDD领域驱动设计排第一!
  9. Spring:Spring-过滤器Filter原理
  10. android scalex中心,androidmatrix android怎么算matrix中心点
  11. 图像有损压缩与无损压缩_图像:有损与无损压缩
  12. Autojs之QQ 群发消息(是QQ 群发,不是QQ群 发)
  13. 三星手机服务器暂时不可用是怎么回事,三星手机用户注意了!三星云将于2017年1月20日起停止服务...
  14. ui 名前空間の Aura コンポーネントの廃止
  15. 奇点云完成8000万元B2轮融资,加速云原生技术布局
  16. 项目成本管理:项目成本控制
  17. Log4cpp: log4cpp快速使用指南
  18. 别人看我真威风,我羡别人好轻松
  19. NTT(快速数论变换)模板
  20. javascript运算符:==与===的区别,||和特殊用法

热门文章

  1. 爱快助力元气森林随时随地高效办公
  2. js怎么获取扫码枪条码_生产扫码计件解决方案
  3. 如何才能成为优秀的测试工程师?
  4. 控制寄存器:指令指针寄存器IP:存放下一条指令的地址的偏移量,标志寄存器FR(16):
  5. 简单理解极大似然估计MLE
  6. Hadoop+Spark 集群部署
  7. Linux /proc/pid目录下相应文件的信息说明和含义
  8. C++11 并发指南三(Lock 详解)
  9. 1108. IP 地址无效化
  10. Qt中对main.cpp的代码解释