问题标签 [spring-mongo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1141 浏览

mongodb - Mongodb查询执行需要很长时间

下面是我的 mongodb 3.0 查询,它的执行时间很长(4 秒以上),数据集只有 430 万个文档:

复合索引字段:

相同的查询

执行需要几毫秒。

请让我知道我在哪里做错了。

0 投票
1 回答
295 浏览

java - 自定义验证器有多个问题

我想在 Spring MVC Web App 中实现自定义验证,但我有多个问题,我有两个实体作为

@Entity 公共类 Bar 实现 Serializable {

}

我的自定义验证器是

1-我想用一些 HTML 和 CSS 显示一些错误消息

但现在无法在我的控制器中完成工作

形式是

此时我运行应用程序时出现错误

2- java.lang.IllegalStateException:Validator [com.exam.FooValidator@1e2c656] 的目标无效:Bar [title=null]

跟踪是

我发现应该有@InitBinder以这种方式声明名称的新方法

我仍然得到与上述相同的错误。请对这些问题的任何解决方案

0 投票
0 回答
605 浏览

java - 当集合中有多种类型时如何让 MongoRepository 返回正确的类型

使用 Spring Boot、Spring Data (MongoDB)。假设我有两个类有一些共同的超类,因此它们在同一个集合中:

和子类:

以及每种类型对应的 MongoRepository:

问题

事实上 findAll 找到了包括卡车在内的所有汽车,并向下转换为 Van (!!)。如何在不引入类型字段的情况下使 Repository 类对类型更加严格?

依赖项

  • spring-boot-starter-parent 1.2.7(父 pom)
  • spring-boot-starter-data-mongodb
  • 弹簧靴启动球衣
  • spring-boot-starter-tomcat
  • 弹簧引导启动器执行器
  • 弹簧引导启动器测试
0 投票
1 回答
1541 浏览

java - 如何在 mongo-spring 聚合中使用文本搜索

如何将一个简单的 mongo shell $match 短语翻译成它在 Java 中的 mongo-spring 中等效 - 使用聚合?

0 投票
0 回答
29 浏览

java - 除了注释之外,是否有一种编程方式可以将对象指定为 Spring MongoDB 的文档?

我有一个由许多服务使用的域对象库。其中一项服务希望将一个对象存储在该库中的现有 MongoDB 集合中,该集合的名称与类名不同。

我想避免@Document在域对象库中的对象上添加注释,因为它会引发很多不必要的依赖。是否有一种编程方式来设置我的 Mongo 配置,这样如果我调用MongoRepository.save()该对象,它就会知道将其保存在我的集合中?

0 投票
1 回答
3362 浏览

spring - 使用 spring mongo 进行分片

我正在使用 mongoDB 通过 Spring Web 应用程序存储和查询近 5000 万条记录(没有固定模式的大型 Json 文件)。简单的基于 KV 对的查找查询会在几秒钟内运行。我正在寻找将搜索时间缩短到 < 1 秒的方法。

由于存储文件的性质,索引对我不起作用。我正在寻找替代方案并遇到了分片。但是,我没有找到很好的教程来解释如何为我现有的 spring-mongo 应用程序设置分片。

有人可以为我指出一个很好的解释吗?也欢迎任何其他优化搜索时间的建议!

编辑

根据评论,我将现有的 Mongo 数据库转换为具有 1 个配置服务器、1 个查询服务器和 2 个分片的分片数据库。以前我的(spring-boot)application.properties 文件看起来像这样:

我现在如何修改它以适应同名的分片数据库?

0 投票
1 回答
469 浏览

java - MongoDB 分片删除数据非常慢

我发现我的 MongoDB 删除数据非常慢,但查询或插入操作没问题。

这是我的分片状态:

这两个数据库设置在不同的国家。但我确信我在测试中将所有数据都放到了同一个数据库中。

这是记录结构:

我使用 spring 框架,这是我的代码:

询问:

删除:

一般来说,保存或查询 100 条记录会花费 100ms。但是逐个删除 100 条记录需要 30 多秒。

但是如果我使用批量删除,它花费的时间少于 50 毫秒。看起来很正常。

0 投票
1 回答
802 浏览

java - 将 $stdDevSamp 或 $stdDevPop 与 Spring Mongo 一起使用

我想知道如何实现标准偏差聚合函数以在 Spring Mongo Data 中使用。

我知道 Mongo DB 3.2 有一个标准偏差聚合函数,但它在 Spring Data 中不可用。

我可以使用 Mongo 的聚合功能吗?

谢谢。

0 投票
1 回答
1138 浏览

spring - Spring mongodb dbref 一对多如何实现

例如,我会这样想

此刻,一切正常。但在那之后

当我尝试获取已挂起程序的两个用户之一时,我认为它的原因是:用户一加载了包含用户二的列表,但用户二包含用户一的列表,其中包含该用户的列表,最后我有循环。最好的方法是为链接两个对象创建额外的文档???

0 投票
2 回答
6707 浏览

java - 如何使用 Spring+Mongo 更新和添加到子文档列表

我在 MongoDB 集合中有这样的文档:

(顶层ID是正常的自动生成的MongoDB ID。子文档对象的另一个ID是我单独生成并推入列表的伪ID)

问题:我想(1)添加listB和(2)改变thing

该对象可能非常庞大,并且可能有多个线程在该对象上运行,因此我想避免出现findOne, update, thensave类型的场景。

我想在 Spring Data 中以与我推动类似的方式执行此操作listA,即

但是我无法生成正确的查询/标准。

提前致谢。