MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json的bjson格式,因此可以存储比较复杂的数据类型。
import java.net.UnknownHostException; import java.util.HashMap; import java.util.Map; import com.mongodb.BasicDBObject; import com.mongodb.BasicDBObjectBuilder; import com.mongodb.DB; import com.mongodb.DBCollection; import com.mongodb.DBCursor; import com.mongodb.DBObject; import com.mongodb.Mongo; import com.mongodb.MongoException; import com.mongodb.util.JSON; /** * Java MongoDB : Insert a Document * */ public class InsertDocumentApp { public static void main(String[] args) { try { Mongo mongo = new Mongo("localhost", 27017); DB db = mongo.getDB("yourdb"); // get a single collection DBCollection collection = db.getCollection("dummyColl"); // BasicDBObject example System.out.println("BasicDBObject example..."); BasicDBObject document = new BasicDBObject(); document.put("database", "mkyongDB"); document.put("table", "hosting"); BasicDBObject documentDetail = new BasicDBObject(); documentDetail.put("records", "99"); documentDetail.put("index", "vps_index1"); documentDetail.put("active", "true"); document.put("detail", documentDetail); collection.insert(document); DBCursor cursorDoc = collection.find(); while (cursorDoc.hasNext()) { System.out.println(cursorDoc.next()); } collection.remove(new BasicDBObject()); // BasicDBObjectBuilder example System.out.println("BasicDBObjectBuilder example..."); BasicDBObjectBuilder documentBuilder = BasicDBObjectBuilder.start() .add("database", "mkyongDB") .add("table", "hosting"); BasicDBObjectBuilder documentBuilderDetail = BasicDBObjectBuilder.start() .add("records", "99") .add("index", "vps_index1") .add("active", "true"); documentBuilder.add("detail", documentBuilderDetail.get()); collection.insert(documentBuilder.get()); DBCursor cursorDocBuilder = collection.find(); while (cursorDocBuilder.hasNext()) { System.out.println(cursorDocBuilder.next()); } collection.remove(new BasicDBObject()); // Map example System.out.println("Map example..."); Map<String, Object> documentMap = new HashMap<String, Object>(); documentMap.put("database", "mkyongDB"); documentMap.put("table", "hosting"); Map<String, Object> documentMapDetail = new HashMap<String, Object>(); documentMapDetail.put("records", "99"); documentMapDetail.put("index", "vps_index1"); documentMapDetail.put("active", "true"); documentMap.put("detail", documentMapDetail); collection.insert(new BasicDBObject(documentMap)); DBCursor cursorDocMap = collection.find(); while (cursorDocMap.hasNext()) { System.out.println(cursorDocMap.next()); } collection.remove(new BasicDBObject()); // JSON parse example System.out.println("JSON parse example..."); String json = "{'database' : 'mkyongDB','table' : 'hosting'," + "'detail' : {'records' : 99, 'index' : 'vps_index1', 'active' : 'true'}}}"; DBObject dbObject = (DBObject)JSON.parse(json); collection.insert(dbObject); DBCursor cursorDocJSON = collection.find(); while (cursorDocJSON.hasNext()) { System.out.println(cursorDocJSON.next()); } collection.remove(new BasicDBObject()); } catch (UnknownHostException e) { e.printStackTrace(); } catch (MongoException e) { e.printStackTrace(); } } }
相关推荐
在文件名为“demo”的压缩包中,可能包含了实现上述功能的示例代码,包括连接数据库、执行SQL、操作MongoDB文档以及数据同步的具体逻辑。解压并研究这些代码,可以帮助你更好地理解和实践Java与MySQL、MongoDB的数据...
### Spring Data MongoDB中文文档知识点概览 #### 一、Spring Data MongoDB概述 - **Spring Data MongoDB** 是 **Spring Data** 家族的一员,它提供了一种简单的方式来与 MongoDB 数据库进行交互。通过 Spring Data...
MongoDB是一种流行的开源文档数据库系统,它属于NoSQL数据库类别,以其灵活性、可扩展性和高性能而受到广大开发者的青睐。本教程将引导你逐步了解MongoDB的基础知识,深入其架构,并展示如何在Java环境中使用MongoDB...
- **存储库实例创建**:介绍了几种创建存储库实例的方法,如XML配置、JavaConfig等。 - **自定义实现**:讲解如何自定义存储库实现以适应特定需求。 #### 9. MongoDB支持 - **入门**:快速启动指南,帮助用户快速...
在“MongoDB基础教学文档”中,你可以期待学习到以下几个关键知识点: 1. **数据模型**:MongoDB的数据模型是基于BSON(Binary JSON)的,这种格式允许存储复杂的数据结构,如嵌入式文档和数组。这使得在一个文档内...
对于索引管理,项目提供了以下几种注解: - **@Indexed**:用于创建单字段索引,可以通过unique属性设置是否为唯一索引,name属性可以自定义索引名称。 - **@CompoundIndexed**:用于创建复合索引,可以指定多个...
MongoDB则是一种流行的NoSQL数据库,以其灵活性、高性能和文档型数据模型而受到广泛欢迎。将Java MVC与MongoDB整合,可以构建出高效、可扩展的数据驱动应用。本文将详细介绍如何在Java MVC项目中配置和使用MongoDB。...
同时,你还需要指定如何映射日志事件到MongoDB文档的结构。 4. **编写代码**:在Java代码中,你需要按照正常的log4j2使用方式调用日志记录方法。Log4j2会根据配置自动将日志发送到MongoDB。 5. **测试和优化**:...
MongoDB是一种流行的开源文档数据库系统,以其灵活性、可扩展性和高性能而受到开发者的青睐。在Java应用程序中,当处理大量并发请求时,有效地管理数据库连接是至关重要的。这就是MongoDB连接池的作用,它能帮助优化...
2. 定义日志模型:设计一个数据模型来表示日志条目,这可能是一个包含日志级别、时间戳、类名、方法名、消息等内容的MongoDB文档。 3. 编写日志处理器:实现一个`org.slf4j.spi.LoggerAdapter`接口,覆盖其`log()`...
MongoDB是一款流行的开源文档型数据库,以其高性能、高可用性和可扩展性著称,而Java驱动程序则是MongoDB生态系统中的关键部分,为Java开发者提供了一个桥梁,让他们能够利用Java语言的强大功能来操作MongoDB。...
3. **BSON**: BSON(Binary JSON)是MongoDB中用于数据表示和传输的格式,Java驱动包含了一系列的类和接口来处理BSON对象,如`Document`用于表示JSON文档,`BasicDBObject`和`BasicBSONList`是其基础实现。...
MongoDB是一种流行的开源、分布式数据库系统,以JSON格式的文档为数据存储单元,具有高性能、高可用性和可扩展性。这个"mongodb安装文档和工具类.zip"压缩包包含了一些与MongoDB安装相关的文档以及Java编程中操作...
首先,Java是一种广泛使用的面向对象的编程语言,它以其跨平台性、丰富的库支持和强大的性能而受到青睐。在Java中,开发人员可以编写后端服务、桌面应用、移动应用以及各种类型的中间件。 MongoDB则是一种流行的...
- MongoDB Java驱动通过`MongoClient`实例建立到MongoDB服务器的连接,使用`MongoDatabase`和`MongoCollection`来操作数据库和集合。 - 数据操作通常涉及构建`BasicDBObject`或`Document`对象,然后调用`insertOne()...
MongoDB 是一种非关系型数据库,它以文档形式存储数据,文档结构类似于 JSON。与传统的关系型数据库不同,MongoDB 不使用表格和行列结构,而是以键值对的形式存储数据,这使得处理复杂的数据结构变得更为灵活。...
10. MongoDB文档示例: MongoDB的文档是一种以BSON格式存储的数据结构,类似于JSON。文档包含一个唯一的_id字段,可以通过ObjectId进行索引,字段可以是字符串、数组、对象等多种类型。 总结来说,MongoDB作为一种...
Spring Data MongoDB提供了一种通过注解的方式来将Java对象映射到MongoDB文档。`@Document`注解用于标记一个类作为文档,而`@Id`注解标识文档的主键。例如,以下`Order`类展示了如何定义字段并映射到MongoDB文档: ...
MongoDB驱动程序的使用涉及到几个关键知识点: 1. **连接方式**:MongoDB支持多种驱动,包括官方驱动和其他第三方驱动。在Windows上,通常会使用MongoDB的C++驱动或者基于.NET、Java、Python等平台的驱动。 2. **...