MongoDB 通过 Maven 用 Java API 进行增删改查
2017-09-29 14:53
357 查看
1. 源码
/** * App.java */ package com.jiecxy; import com.mongodb.Block; import com.mongodb.MongoClient; import com.mongodb.client.FindIterable; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoCursor; import com.mongodb.client.MongoDatabase; import com.mongodb.client.model.Filters; import org.bson.Document; import java.util.ArrayList; import java.util.List; public class App { public static void main( String[] args ) { // 连接到 mongodb 服务 MongoClient mongoClient = new MongoClient("localhost", 27017); String DB_NAME = "mydb"; String DB_COL = "mycol"; // 显示所有数据库名字 mongoClient.listDatabaseNames().forEach((Block<String>) name -> { System.out.println("DB_NAME: " + name); if (name.equals(DB_NAME)) { mongoClient.dropDatabase(DB_NAME); System.out.println("DB " + name + " DROPPED ======================"); } }); // 连接到数据库 MongoDatabase mongoDatabase = mongoClient.getDatabase(DB_NAME); // 创建集合 mongoDatabase.createCollection(DB_COL); // 获取集合 MongoCollection mongoCollection = mongoDatabase.getCollection(DB_COL); //插入文档 Document document = new Document("title", "MongoDB").append("description", "database").append("likes", 100); List<Document> documents = new ArrayList<>(); documents.add(document); documents.add(new Document("title", "HBase").append("description", "database2").append("likes", 90)); documents.add(new Document("title", "Redis").append("description", "database3").append("likes", 80)); mongoCollection.insertMany(documents); // 更新文档 mongoCollection.updateMany(Filters.eq("likes", 100), new Document("$set",new Document("likes",200))); // 删除符合条件的第一个文档 mongoCollection.deleteOne(Filters.eq("likes", 80)); // 删除所有符合条件的文档 // mongoCollection.deleteMany (Filters.eq("likes", 80)); System.out.println("\nShow the documents ......................."); // 查看所有文档 mongoCollection.find().forEach(((Block<Document>) doc -> System.out.println(doc))); // OR view collections like this way // FindIterable<Document> findIterable = mongoCollection.find(); // MongoCursor<Document> mongoCursor = findIterable.iterator(); // while(mongoCursor.hasNext()){ // System.out.println(mongoCursor.next()); // } mongoClient.close(); } }
运行结果:
2. pom.xml文件配置
注意: 1. 使用shade方式防止打包失败 2. 这里的dependency只需引用 `mongo-java-driver`
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.jiecxy</groupId> <artifactId>MongoDBTest</artifactId> <version>1.0</version> <packaging>jar</packaging> <name>MongoDBTest</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.0.3</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <executions> <!-- Run shade goal on package phase --> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <filters> <filter> <!-- Do not copy the signatures in the META-INF folder. Otherwise, this might cause SecurityExceptions when using the JAR. --> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>com.jiecxy.App</mainClass> </transformer> </transformers> <createDependencyReducedPom>false</createDependencyReducedPom> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>
相关文章推荐
- HBase 通过 Maven 用 Java API 进行增删查put/get/delete
- mongodb通过java对数组元素及内嵌文档进行增删改查操作
- $within进行空间查询--MongoDB API for Java
- Java连接MongoDB进行增删改查的操作
- Java通过JDBC进行简单的增删改查(以MySQL为例)
- Java连接MongoDB进行增删改查
- Java中使用MongoDB进行增删改查
- Java通过MyBatis框架对MySQL数据进行增删查改的基本方法
- Java 通过JDBC进行数据操作(增删改查)
- Java通过JDBC进行简单的增删改查(以MySQL为例)
- [置顶] Java通过JDBC进行简单的增删改查(以MySQL为例)
- ArcGIS API For Javascript之编辑服务器端图层(通过要素服务feature进行增删改查 )
- MongoDB(二)-- Java API 实现增删改查
- Ubuntu14.04下Mongodb的Java API编程实例(手动项目或者maven项目)
- 通过PreparedStatement 对数据库进行增删改查
- mongodb- Java API 增删改操作
- rails 4.0.2 + mongoid 对mongodb进行增删改查
- Atitit 持久化 之道 attilax 艾龙著 1. 第2章 Java对象持久化技术概述 2 1.1. 2.1 直接通过JDBC API来持久化实体域对象 2 1.2. 2.2 ORM简介 2
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- java对数据库进行增删改查的封装(封装以后只要一句话就搞定对数据库的增删改查)