草庐IT

Mongotemplate

全部标签

java - 用于枚举字段的 mongoDb 和 spring 数据自定义转换器

我有一个名为Metric的简单Java类,它有两个字段:MetricType和值:publicclassMetric{MetricTypetype;intvalue;}enumMetricType{SPACE,CPU,UNKNOWN}当从mongo读取指标时,我想要MetricType的自定义转换器,它将任何未映射到枚举的内容转换为UNKNOWN。我的仓库是一个简单的仓库:publicinterfaceMetricRepositoryextendsMongoRepository{}我正在使用spring-boot-starter-data-mongodb版本1.5.9我尝试做的是创建一

java - 由: java. lang.NoSuchMethodError : org. springframework.data.mongodb.core.MongoTemplate.<init>(Lcom/mongodb/Mongo;Ljava/lang/String;)V引起

尝试运行Spring-boot应用程序(v2.1.0)时出现以下错误:Description:Anattemptwasmadetocallthemethodorg.springframework.data.mongodb.core.MongoTemplate.(Lcom/mongodb/Mongo;Ljava/lang/String;)Vbutitdoesnotexist.Itsclass,org.springframework.data.mongodb.core.MongoTemplate,isavailablefromthefollowinglocations:file:/C:/U

mongodb - 如何使用 mongotemplate 更新数组列表?

我正在使用mongoTemplate在我的程序中插入、删除和更新数据。我只想使用这个mongotemplate更新pojo类中的数组列表值。这是我的父类-搜索@Document(collection="search_details")publicclassSearch{@IdprivateStringid;privateStringsearchkey;privateArrayListleads;privateStringstatus;publicStringgetId(){returnid;}publicvoidsetId(Stringid){this.id=id;}publicArr

mongodb - spring data mongo - 带有查询提示的mongotemplate计数

mongodocs指定您可以使用以下语法为计数查询指定查询提示:db.orders.find({ord_dt:{$gt:newDate('01/01/2012')},status:"D"}).hint({status:1}).count()你能用mongo模板来做吗?我有一个Query对象,正在调用withHint方法。然后我调用mongoTemplate.count(query);但是,我很确定它没有使用提示,尽管我不是肯定的。 最佳答案 当然,这有几种形式,包括深入到基本驱动程序,但假设使用您定义的类,您可以这样做:Dateda

Java:异步 MongoTemplate/MongoOperation

有没有办法将一些东西异步插入到mongodb中?我知道mongodb在大多数情况下都相当快,但我想也许我可以通过在给出命令后立即返回来节省几毫秒。它适用于连接到服务器以向mongodb发送插入内容的命令的那些用例。您希望在命令发出后返回到客户端,而不必等待来自mongodb的响应。我阅读了文档:http://docs.spring.io/spring-data/mongodb/docs/current/reference/html/好像只是异步读取,没有异步插入。 最佳答案 SpringDataMongoDBdocumentatio

MongoDB 向应用程序发送信号

小问题:如果集合发生变化,MongoDB可以联系应用程序吗?某种触发器会向应用程序发出某些字段已更改或添加之类的信号? 最佳答案 如果您可以利用spring-data-mongodb,那么您可以利用它的implicitsupportofevents以满足您的要求。onBeforeConvert-在使用MongoConveter将对象转换为DBObject之前,在MongoTemplate插入、插入列表和保存操作中调用。onBeforeSave-在数据库中插入/保存DBObject之前调用MongoTemplate插入、插入列表和保存

mongodb - 如何设置allowDiskUse :true in spring mongoTemplate

目前我在Spring使用mongoDB作为mongoTemplate。publicListgetMoviesByName(){Aggregationaggregation=newAggregation(unwind("movies"),match(where("movies.language").is("english")),sort(Sort.Direction.DESC,"createDate"),group(fields().and("_id","$_id").and("category","$category")).push("$movies").as("movies"),pr

spring - 自定义或提供提示以允许 Spring MongoTemplate 使用 final 成员反序列化对象

我正在使用Spring数据的MongoTemplate。我有一个类,我成功地保存到mongoDB。当我尝试使用find方法检索保存的对象时,我得到了一个NoSuchMethodException,因为MongoTemplate试图调用我的类中的一个成员的不存在的默认构造函数。该成员没有默认构造函数,因为它是具有最终成员的最终类。有两个构造函数。第一个接受所有相关值作为参数。第二个接受Map并具有@JsonCreator注释,这使Jackson能够“很好地”使用此类。如何让MongoTemplate成功反序列化我的类?是否有某种注释可以提供帮助?我可以通过MongoTemplate某种特

spring data mongodb,使用 MongoRepository 还是 MongoTemplate?

如果使用MongoRepository,可以有如下代码:@RepositorypublicinterfaceUserRepoextendsMongoRepository{//additionalmethodsgohere}然后你做userRepo.save()find()等做CRUD操作。或者您只是MongoTemplate并执行CRUD操作。我的问题是哪个是首选?每种方法的优缺点是什么?谢谢! 最佳答案 好的,通过查看源代码MongoRepository使用mongoTemplate并提供一组通用的DAOAPI所以换句话说,使用M

java - MongoTemplate 按日期转换查找

我正在尝试转换以下查询:{"cd":{"$lte":ISODate("2013-06-30T09:12:29Z"),"$gte":ISODate("2013-06-11T09:12:29Z")}}与MongoTemplate和Query一起使用。目前我正在做的事情是这样的:Queryquery=newQuery();query.addCriteria(Criteria.where("cd").lte(request.getTo()).gte(request.getFrom()));mongoTemplate.find(query,MyDesiredEntity.class)但是上面的查