Tag: mongodb

以编程方式设置MongoDb转换器

我正在尝试使用带有spring-data-mongodb的自定义转换器。 我想以编程方式创建它,但我收到以下错误: org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type org.joda.time.LocalDate to type java.lang.String at org.springframework.core.convert.support.GenericConversionService.handleConverterNotFound(GenericConversionService.java:475) at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:175) at org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:154) …. …. 以下是失败的代码段: Mongo mongo = new Mongo(); MongoDbFactory mongoDbFactory = new SimpleMongoDbFactory(mongo, “database”); List converters = new ArrayList(); converters.add(new LocalDateWriteConverter()); converters.add(new LocalDateReadConverter()); CustomConversions customConversions = new CustomConversions(converters); MappingContext mappingContext = new SimpleMongoMappingContext(); MappingMongoConverter […]

如何在Spring Boot应用程序中配置嵌入式MongDB进行集成测试?

我有一个相当简单的Spring Boot应用程序,它公开一个小的REST API并从MongoDB的一个实例中检索数据。 对MongoDB实例的查询通过基于Spring Data的存储库进行。 下面的一些关键代码。 // Main application class @EnableAutoConfiguration(exclude={MongoAutoConfiguration.class, MongoDataAutoConfiguration.class}) @ComponentScan @Import(MongoConfig.class) public class ProductApplication { public static void main(String[] args) { SpringApplication.run(ProductApplication.class, args); } } // Product repository with Spring data public interface ProductRepository extends MongoRepository { Page findAll(Pageable pageable); Optional findByLineNumber(String lineNumber); } // Configuration for “live” connections @Configuration public class […]

如何在mongo中插入日期文件?

我们正在尝试插入一个包含当前日期的文档作为其字段。 我们使用eclipse插件为mongodb编写java。 我们想要执行mongo的Date()命令来从mongo而不是从java获取日期。 我该如何执行这个mongo查询? db.example.insert({“date”:new Date()}) 我在预览问题中发现了这个问题,但答案没有帮助 链接

MongoDB从BasicDBObject(Java)中提取值

我无法从MongoDB中查询的文档中检索值。 例如,doc结构如下: { “_id”: { “$oid”: “50f93b74f9eccc540b302462” }, “response”: { “result”: { “code”: “1000”, “msg”: “Command completed successfully” }, “resData”: { “domain:infData”: { “domain:name”: “ritesh.com”, “domain:crDate”: “2007-06-15T12:02:36.0000Z”, “domain:exDate”: “2013-06-15T12:02:36.0000Z” } } } } 查询代码是: DBCollection collection = db.getCollection(“domains”); BasicDBObject p = new BasicDBObject(“response.resData.domain:infData.domain:name”, “ritesh.com”); DBCursor c = collection.find(p); while(c.hasNext()) { DBObject obj = c.next(); Object […]

如何在MongoDB中更新特定文档的特定嵌入文档的值?

我的文档中有以下结构: { _id : ObjectId(“43jh4j343j4j”), array : [ { _arrayId : ObjectId(“dsd87dsa9d87s9d7”), someField : “something”, someField2 : “something2” }, { _arrayId : ObjectId(“sds9a0d9da0d9sa0”), someField : “somethingElse”, someField2 : “somethingElse2” } ] } 我想更新someField和someField2但仅针对数组中的一个项目,即匹配_arrayId的项目 (例如_arrayId : ObjectId(“dsd87dsa9d87s9d7”) ;并且仅针对此文档(例如_id : ObjectId(“43jh4j343j4j”) )没有别的。 arrayIds并不是文档所特有的,这就是我需要它来用于特定文档的原因。 如果我想在数组中为它所存在的每个文档更新该值,我可以使用$ positional operator ,但这不是我想要的。 我试图在java中实现这一点,但命令行解决方案也可以。

配置MongoDB Java驱动程序的日志记录

我可以配置MongoDB Java驱动程序以输出有用(用于调试)消息,理想情况下使用标准日志框架之一吗? 我主要感兴趣的是看到每个查询结果,收到了多少数据以及花了多长时间,以及任何错误代码。

嵌套数组中的Mongodb Increment值

我正在为Spring使用mongotemplate,我想知道如何以primefaces方式增加我在一个数组中的一个文件的值。 想象一下,我们有 {‘a’:1, b:[{_id:341432, c:2 }, {_id:341445, c:3 }]}; 对于_id 341445,我想要的是将c从3增加到4 我一直在使用findAndModify,但我不知道如何为数组中的嵌套文档创建它。 问候。

制作spring-data-mongodb多租户

在最后一个八月sbzoom的post中提出了一个使spring-data-mongoDB多租户的解决方案: “你必须创建自己的RepositoryFactoryBean。这是Spring Data MongoDB参考文档中的示例。你仍然需要实现自己的MongoTemplate并延迟或删除ensureIndexes()调用。但是你必须重写几个类来确保调用你的MongoTemplate而不是Spring。“ 有没有人实现这个或类似的东西?