首页
分类
后端开发
数据库
前端开发
学习笔记
错误合集
标签
Java
MySQL
MongoDB
Linux
IDEA
归档
海尔经典面试题
Linux清理磁盘空间
MySQL查询结果输出到文件
MongoDB数据处理
瞬间
留言板
友情链接
Java学习笔记
Java博客
累计撰写
66
篇文章
累计创建
22
个标签
累计收到
12
条评论
栏目
首页
分类
后端开发
数据库
前端开发
学习笔记
错误合集
标签
Java
MySQL
MongoDB
Linux
IDEA
归档
海尔经典面试题
Linux清理磁盘空间
MySQL查询结果输出到文件
MongoDB数据处理
瞬间
留言板
友情链接
Java学习笔记
目 录
CONTENT
以下是
MongoDB
相关的文章
2024-09-09
SpringBoot多数据源集成——MongoDB
本文介绍了在Spring Boot项目中实现根据业务条件动态切换MongoDB数据源的完整方案。首先通过`spring-boot-starter-data-mongodb`引入依赖,并在配置文件中定义多个数据库(如`default`和`csfa`)。通过`MongoParamsConfig`读取配置,`MongoConfig`类创建多个`MongoTemplate`实例,支持用户名密码认证。为避免保存`_class`字段,扩展了`MappingMongoConverter`。动态切换数据源可通过手动设置`ThreadLocal`标识,结合`DynamicMongoTemplate`选择对应模板;或通过AOP切面自动切换,实现无侵入式数据源切换。针对`MongoRepository`的自定义方法无法通过AOP生效的问题,提出了两种解决方案:一是直接使用`MongoTemplate`;二是创建自定义接口及实现类,继承`MongoRepository`,实现动态数据源调用。该方案适用于需多库动态查询的复杂业务场景,兼顾灵活性与可维护性。
2024-09-09
76
0
7
后端开发
数据库
2024-04-19
MongoDB进阶连表查询
本文展示了一个MongoDB聚合查询脚本及其对应的Spring Mongo Java实现。查询目标是从`collect.template`集合中根据指定的`_id`筛选出模板数据,通过`$lookup`关联`collect.template.group`表获取模板对应分组信息,并提取`groupId`组成数组。接着再次关联`collect.group.field`表,根据`groupId`查询字段信息,并筛选出`unit`为“万元”的数据。最终通过`$project`和`$map`格式化输出,仅保留模板名称、分组ID及字段的标题、编码和分组ID。Java代码中使用Spring Data Mongo的Aggregation构建相同逻辑,通过自定义`AggregationOperation`实现复杂投影和过滤操作,最终返回结构化的结果列表。
2024-04-19
44
0
0
数据库
学习笔记
2022-12-26
MongoDB数据处理
MongoDB 提供了两套数据管理工具:`mongodump`/`mongorestore` 用于整库备份与恢复,`mongoexport`/`mongoimport` 用于数据集的导出与导入。其中,`mongoexport` 可将集合导出为 JSON 或 CSV 格式,并支持指定字段和查询条件;`mongoimport` 则可将 JSON/CSV 文件导入数据库,支持字段映射和 CSV 头部行识别。备份时,`mongodump` 指定主机、数据库和输出目录,生成二进制备份文件;恢复时,`mongorestore` 指定主机、数据库和备份目录,可选择是否覆盖现有数据。对于认证数据库,需添加用户名、密码和认证数据库参数。这些工具适用于不同场景的数据迁移、备份与恢复操作。
2022-12-26
108
0
6
数据库
开发工具
2022-12-09
MongoDB更新修改内嵌文档操作
本文介绍了MongoDB中嵌套数据结构的更新操作。首先,通过`$`定位操作符实现对嵌套数组中特定元素的精准修改,如将“MongoDB专业指北”改为“MongoDB不专业指北”,适用于数组或对象数组场景。其次,使用`.`属性访问符更新下级文档属性,例如修改“scores.praise”的值,或结合`$`操作符更新嵌套数组中的元素。此外,文章还介绍了属性的增删操作:使用`$push`添加数组元素、`$addToSet`防止重复插入、`$pull`移除匹配元素、`$pop`删除数组首尾元素。通过这些操作符,可高效管理复杂嵌套结构数据,实现灵活的数据更新。
2022-12-09
17
0
0
数据库
2022-12-09
MongoDB使用全文检索
本文介绍了MongoDB的全文检索功能,旨在弥补传统关系型数据库(如InnoDB)在模糊查询时索引失效的缺陷。MongoDB自2.4版本起支持全文检索,支持15种语言,2.6版本后默认启用。可通过`db.adminCommand`或启动参数开启该功能。用户可对文本字段(如`post_text`)创建全文索引,使用`$text`操作符进行高效关键词搜索,如`db.posts.find({$text:{$search:"runoob"}})`。全文索引性能优于正则表达式,因后者需全表扫描。但全文索引存在限制:每次查询仅允许一个`$text`操作,不能用于`$nor`查询,且查询中使用`$text`时`hint`失效。整体上,MongoDB全文检索是实现高效模糊查询的有效方案。
2022-12-09
25
2
1
数据库
鄂ICP备20003961号-3