MongoHelper 0.2.5 发布,Spring-Data-MongoDB 增强工具包

编写代码边撸猫 2020-04-20 17:37:56 ⋅ 834 阅读

前言

刚刚看到基于 spring-data-mongodb 的增强工具包mongoHelper 发布了更新,这个工具包简化 CRUD 操作,并且提供了类 jpa 的数据库操作。

都知道在传统关系型数据库及围绕它们构建的 orm 在项目开发中有很多难用的痛点,然而随着 mongodb 这种文档性数据库的出现,完美的解决了 sql 数据库在项目开发中的诸多痛点,在 mongodb4.0 以后支持了事务,已经可以完美的用于工程项目。spring-data-mongodb 已经对 mongodb 的操作做了一部分封装,但依然不够用,Query 与 Criteria 的操作依然有比较大的局限性,而且对于习惯 sql 操作和 sql orm 的人来说,其使用法则依然稍显别扭。mongoHelper 对 spring-data-mongodb 又进行了进一步封装,补充了 mysql 有但 mongodb 没有的特性,比如字段默认值,使其更易于使用,更接近与关系型数据库 orm 库,并添加了很多易于项目管理的功能。


0.2.5更新内容

本次更新内容

完善查询语句的打印,增删改查都可进行打印完善数据库导入导出功能,减少内存占用其他一些代码写法上的优化,增加了一些数据库操作方法

Spring Boot集成mongoHelper

第一步:增加pom引用

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

第二步:注入MongoTemplate

在对应的Dao层注入 MongoTemplate。

第三步:获取集合

mongoTemplate.getCollection(mongoTemplate.getCollectionName(entityClass)).distinct(key, query.getQueryObject())

第四步、增加操作(插入)

可以一次性插入一个 对象集合 ,也可以一次只插入一个对象 ;当需要插入的大数据量的时候,首先推荐使用批量插入,提升插入性能。

代码示例:

List<UserInfo> userList = new ArrayList<UserInfo>();
userList.add(new UserInfo(1,"1","孙悟空","金箍棒"));
userList.add(new UserInfo(2,"2","猪八戒","耙子"));
userList.add(new UserInfo(3,"0","唐僧","杖"));
mongoTemplate.insert(userList, "userList");

备注:

同一个mongo集合中,前后插入的数据 对象类型要一致
实体类需要用注解标识:
@Document(collection = “xxx”):用于实体类上,表明这是一个MongoDB的文档集合,相当于MySQL的数据表;其中collection表示集合名称,不写则默认为实体类名称
@Id:用于实体类中的成员变量,表示主键标识
@Field(“xxx”):用于实体类中的成员变量,表示MongoDB文档集合中的字段,其值对应集合的字段名称。

总结
虽然一些复杂的查询和更新还需要禽兽编写构造Query和Update,但是大部分情况足够满足的。


全部评论: 0

    我有话说:

    mongoHelper 0.3.9 发布spring-data-mongodb 增强工具包,简化 CRUD 操作

    mongoHelper 是基于 spring-data-mongodb增强工具包,简化 CRUD 操作,提供类 jpa 的数据库操作。 传统关系型数据库及围绕它们构建的 orm 在项目开发中有很

    【开源资讯】Spring Data 2020.0 RC2 发布

    Spring Data 2020.0 RC2 发布了。Spring Data 项目的目的是简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库、Map-Reduce 框架

    Spring Data 2020.0.0 正式 GA

    Spring Data 2020.0.0(代号 Ockham)已正式 GA,这也是更改版本号方案后的首个版本,此前的版本号采用名字来标记,例如 Neumann-RELEASE。 新的版本号格式为

    Spring Boot 2.4.0-RC1, 2.1.18, 2.2.11 和 2.3.5 发布

    Spring Boot 多个分支发布了新版本,分别是 2.4.0-RC1, 2.1.18, 2.2.11 和 2.3.5Spring Boot 2.4.0-RC1 此版本是 

    Spring Cloud Data Flow 2.7.1 发布

    Spring Cloud Data Flow 2.7.1 发布了。Spring Cloud Data Flow 是构建数据集成和实时数据处理流水线的工具包。 主要更新内容 UI 错误修复

    构建数据集成和实时数据处理流水线工具Spring Cloud Data Flow

    Spring Cloud Data Flow 是基于原生云对 Spring XD 的重新设计

    Mongoose 5.12.5 发布MongoDB 异步对象模型工具

    Mongoose 是设计用于异步环境的 MongoDB 对象模型工具。Mongoose 支持 promises 和 callbacks。Mongoose 5.12.5 正式发布,本次更新内容如下

    MongoDB系列---数据类型/插入文档(三)

    第一部分 BJSON 与 JSON MongoDB的文档与JavaScript中的对象很相似,JavaScript中的数据交互格式是JSON格式. JSON的数据格式: 1. null;2. 布尔

    架构实战篇(七):Spring Boot Data JPA 快速入门

    Spring Data JPA 是Spring Data 的一个子项目,它通过提供基于JPA的Repository极大了减少了操作JPA的代码。

    Spring Framework 5.3.6 & 5.2.14 发布

    Spring Framework 5.3.6 和 5.2.14 现已发布,分别包含 19 项与 11 项修复和改进。 主要更新内容 5.3.6 在

    Spring Framework 5.3.4 和 5.2.13 发布

    Spring Framework 5.3.4 和 5.2.13 已发布5.3.4 版本包括 62 项修复和改进,5.2.13 包含 18 项修复和改进。具体如下。 v5.3.4 部分新特性 在

    Spring Boot 2.4.5 & 2.3.10 发布

    Spring Boot 2.4.5 & 2.3.10 现已发布。本次更新是错误修复版本,分别包含 57 个与 78 个错误修复。 主要更新内容 2.4.5spring.main

    微服务架构学习笔记:gRPC Spring Boot Starter 2.2.0 发布,及使用步骤

    gRPC Spring Boot Starter 项目是一个 gRPC 的 Spring Boot 模块。内嵌一个 gRPC Server 对外提供服务,并支持 Spring Cloud 的服务发现

    Spring Boot 2.1.0新特性 ,准备好了吗?!

    Spring Boot官方在10月30号正式发布了v2.1.0.RELEASE版本,由于本人最近比较忙,直到今天才着重抽空学习和了解这次升级一共带来了9大新特性,根据官方描述,正在逐渐支持 java

    MongoDB 4.4.5 发布

    MongoDB 是一种面向文档的数据库管理系统,用 C++ 等语言撰写而成,以解决应用程序开发社区中的大量现实问题。MongoDBMongoDB Inc. 于 2007 年 10 月开发

    MongoDB系列之----概述(一)

    MongoDB是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。

    MongoDB 数据库的基本操作(二)

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

    【开源资讯】Spring Boot 2.4.0.M4 发布

    Spring Boot 2.4.0 的第四个里程碑版本发布了,可以从里程碑仓库获取。此版本包含 145 项更新内容,亮点如下:1、改进故障分析器(Failure Analyzer

    Gradle 5.0 RC2 发布,支持 Java 11、Kotlin DSL 生产就绪

    Gradle 5.0 RC2 发布了,Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。