首页 资讯频道 互联频道 智能频道 网络 数据频道 安全频道 服务器频道 存储频道

mongoHelper 0.1.6 发布 可提供类 jpa 的数据库操作

2020-03-05 10:22:16 来源 : 开源中国

mongoHelper 是基于 spring-data-mongodb 的增强工具包,简化 CRUD 操作,提供类 jpa 的数据库操作。

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

更多关于mongoHelper的特性以及本人对sql与nosql在工程项目领域的思辨,请移步码云页面,有更进一步详细的说明

https://gitee.com/cym1102/mongoHelper

本次更新内容

1: 增加了对单实例mongodb的支持, 但单实例mongodb不支持事务, 当然也就不能使用事务注解@Transactional

2: 增加了对查询语句的格式化打印功能, 原版spring-data-mongodb默认的打印语句方式为修改配置文件logging.level.root: debug。但这里打印出来的语句基本不可读,也不能像sql一样直接复制出来到数据库中进行执行,处于集群模式下还每隔数秒发送一次检测当前数据库isMaster的命令,很干扰debug。本orm重写了查询语句的打印功能,只要配置spring.data.mongodb.print:true就能打印出如下的语句:

db.admin.find({

"$and": [

{

"name": {

"$regex": "^.*ad.*$",

"$options": "i"

}

}

]

}).projection({

"name": 1

}).sort({

"id": -1

});

可直接复制到mongodb客户端中进行执行,非常方便调试。

相关文章

最近更新