MongoDB(java操作)
2017-08-06 12:58
363 查看
一、 准备工作
MongoDB与java连接需要相应驱动,可用maven添加相应依赖:<dependencies> <dependency> <groupId>org.mongo</groupId> <artifactId>mongo-java-driver</artifactId> <version>3.2.2</version> </dependency> </dependencies>
或者自行下载添加至构建路径即可:mongodb驱动
二、 java操作数据库
import java.util.ArrayList; import java.util.List; import org.bson.Document; 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; public class Test { static MongoDatabase db = null; static MongoClient mongoClient = null; public static void main(String[] args) { try { db = Connect("mydb"); find("mycol"); insert("mycol"); find("mycol"); } catch (Exception e) { e.printStackTrace(); }finally { mongoClient.close(); } } /** * 获得与数据库的连接 * @param dbName * @return * @throws Exception */ public static MongoDatabase Connect(String dbName) throws Exception{ try { //启用Mongo客户端访问MongoDB服务 mongoClient = new MongoClient("localhost", 27017); //连接到相应数据库 MongoDatabase db = mongoClient.getDatabase(dbName); System.out.println("connect successfully"); return db; } catch (Exception e) { throw new Exception(); } } /** * 向数据库当中插入文档 * @param collectionName */ public static void insert(String collectionName){ MongoCollection<Document> collection = db.getCollection(collectionName); /* * 创建org.bson.Document 参数为key-value键值对 * 创建文档集合List * 将文档集合插入数据库当中 * insertMany(List)可以插入多个文档 * insertOne(Document)可以插入一个文档 */ Document document = new Document("title", "Mondbnew"). append("description", "database"). append("likes", 100). append("by", "super"); List<Document> list = new ArrayList<>(); list.add(document); collection.insertMany(list); System.out.println("insert successfuly"); } /** * 检索数据库当中文档 * @param collectionName */ public static void find(String collectionName){ MongoCollection<Document> collection = db.getCollection(collectionName); /* * 获取迭代器 * 通过迭代器获取游标 * 通过游标遍历文档 */ FindIterable<Document> findIterable = collection.find(); MongoCursor<Document> cursor = findIterable.iterator(); while(cursor.hasNext()){ System.out.println(cursor.next()); } } /** * 更新文档 * @param collectionName */ public static void update(String collectionName){ MongoCollection<Document> collection = db.getCollection(collectionName); //更新文档 将原likes:100修改为likes:200 collection.updateMany(Filters.eq("likes", 100), new Document("$set", new Document("likes", 200))); System.out.println("update successfly"); } /** * 删除文档 * @param collectionName */ public static void remove(String collectionName){ MongoCollection<Document> collection = db.getCollection(collectionName); //删除符合条件的第一个文档 collection.deleteOne(Filters.eq("likes", 200)); //删除符合条件的第二个文档 collection.deleteMany(Filters.eq("likes", 200)); } }
相关文章推荐
- JAVA封装Mongodb操作之一:MongoRepository
- 使用JAVA操作MongoDB(Spring整合)
- Java操作MongoDB
- Java 操作MongoDb 增删改查
- 【MongoDB for Java】Java操作MongoDB
- 记录用java简单操作mongodb的过程
- java操作mongodb(分页优化)
- mongodb- Java API 查询操作
- MongoDB——Java操作(增删改查)
- Java操作MongoDB采用MongoRepository仓库进行条件查询
- mongoDB (java操作)
- java操作mongodb(聚合函数)-分组找出每组的最大值
- Java实现对MongoDB的AND、OR和IN操作
- mongodb系列之一:java操作mongodb数据库
- java 中 mongodb的各种操作
- Java操作MongoDB
- Java操作MongoDB (第二篇)
- java操作mongodb——查询数据
- Java实现对MongoDB的AND、OR和IN操作
- java操作mongodb(连接池)