这边文章实现了mongodb和java结合进行增删改查的基本操作,可以作为mongodb的练手代码。
项目目录:
1.jar包的导入
2.创建类和静态块
3.添加文档
4.查询文档
5,.修改文档
6.删除文档
1.jar包的导入
- mongodb与java的连接jar包:mongodb-driver-3.4.2.jar和mongodb-driver-core-3.4.2.jar
- junit的测试jar包:junit-4.1.2.jar和hamcrest-core-1.3.jar
- bson格式的jar包:bson-3.4.0.jar
可以直接从链接下载:链接:http://pan.baidu.com/s/1jIbwQdo 密码:3062
2.创建类和静态块
静态块的作用:使类在加载的时候就创建了test数据库,创建了mistakes的集合
public class TestMistake { protected static MongoCollection<Document> dbCollection = null; static { try { MongoClient mongoClient = new MongoClient("localhost", 27017); // 连接到数据库 MongoDatabase db = mongoClient.getDatabase("test"); System.out.println("Connect to database successfully"); dbCollection = db.getCollection("mistakes"); System.out.println("集合创建成功"); } catch (Exception exp) { exp.printStackTrace(); } } }
3.添加文档
/** * 测试文档的添加 */ @Test public void createDocument() { Document doc = new Document(); doc.append("name", "qinqin"); doc.append("gender", "female"); doc.append("age", "18"); dbCollection.insertOne(doc); System.out.println("添加成功"); }
4.查询文档
/** * 测试文档的查询 */ @Test public void getDocumentByName() { Bson filters = Filters.eq("name", "qinqin"); FindIterable<Document> findIterable = dbCollection.find(filters); MongoCursor<Document> mongoCursor = findIterable.iterator(); while (mongoCursor.hasNext()) { System.out.println(mongoCursor.next()); } System.out.println("查询成功"); }
5,.修改文档
/** * 测试文档的修改 */ @Test public void updateDocuemnt() { dbCollection.updateMany(Filters.eq("name", "qinqin"), new Document("$set", new Document("age", "19"))); System.out.println("更新成功"); }
6.删除文档
/** * 测试文档的删除 */ @Test public void deleteDocument() { FindIterable<Document> findIterable = dbCollection.find(); MongoCursor<Document> mongoCursor = findIterable.iterator(); System.out.println("删除前:"); while (mongoCursor.hasNext()) { System.out.println(mongoCursor.next()); } // dbCollection.deleteOne(Filters.eq("name", "qinqin"));// 删除符合条件的第一个文档 dbCollection.deleteMany(Filters.eq("name", "qinqin"));// 删除所有符合条件的文档 System.out.println("删除后:"); // 查看删除后的结果 while (mongoCursor.hasNext()) { System.out.println(mongoCursor.next()); } }