月眸


java中如何使用MongoDB

毛毛小妖 2019-03-14 237浏览 0条评论
首页/ 正文
分享到: / / / /

一、MongoDB是什么?

MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

二、准备工作 

当然是先下载mongoDB的驱动啦。由于我使用maven来构建项目,所以只需在pox.xml文件中加入mongoDB的依赖即可。

<dependencies>
    <dependency>
        <groupId>org.mongodb</groupId>
        <artifactId>mongo-java-driver</artifactId>
        <version>2.13.2</version>
    </dependency>
</dependencies>

三、如何使用

1、使用MongoClient连接MongoDB

MongoClient mongoClient = new MongoClient("localhost", 27017);
DB db = mongoClient.getDB("mydb");

需要指出的是,MongoClient是线程安全的,可以在多程程环境中共享同一个MongoClient。通常来说,一个应用程序中,只需要生成一个全局的MongoClient实例,然后在程序的其他地方使用这个实例即可。

2、认证

MongoDB认证的方式很多,这里介绍两种方式。即MongoCredential和MongoClientURI

2.1、MongoCredential

MongoCredential类的createCredential方法可以指定认证的用户名,密码,以及使用的数据库,并返回一个MongoCredential对象。例如:

MongoCredential credential = MongoCredential.createCredential("user", "mydb", "password".toCharArray()); 
ServerAddress serverAddress = new ServerAddress("localhost", 27017); 
MongoClient mongoClient = new MongoClient(serverAddress, Arrays.asList(credential)); 
DB db = mongoClient.getDB("mydb");

2.2、MongoClientURI

String sURI = String.format("mongodb://%s:%s@%s:%d/%s", "user", "password", "localhost", 27017, "mydb"); 
MongoClientURI uri = new MongoClientURI(sURI); 
MongoClient mongoClient = new MongoClient(uri); 
DB db = mongoClient.getDB("mydb");

3、集合操作

3.1、获取集合

DBCollection coll = db.getCollection("mycol");

3.2、插入文档

BasicDBObject doc = new BasicDBObject("name", "mongo").append("info", new BasicDBObject("ver", "3.0"));
coll.insert(doc);

3.3、查找单个文档

DBObject myDoc = coll.findOne();
System.out.println(myDoc);

3.4、查找所有文档

DBCursor cursor = coll.find();
try {
   while(cursor.hasNext()) {
       System.out.println(cursor.next());
   }
} finally {
   cursor.close();
}

3.5、指定查询条件

BasicDBObject query = new BasicDBObject("i", 71);
DBCursor cursor = coll.find(query);
try {
   while(cursor.hasNext()) {
       System.out.println(cursor.next());
   }
} finally {
   cursor.close();
}

3.6、更新文档

BasicDBObject query = new BasicDBObject("i", 70);
BasicDBObject up = new BasicDBObject("$set", new BasicDBObject("i", 100));
coll.update(query, up);

3.7、删除文档

BasicDBObject query = new BasicDBObject("i", 71);
coll.remove(query);

 

最后修改:2019-03-14 14:21:12 © 著作权归作者所有
如果觉得我的文章对你有用,请随意赞赏
扫一扫支付

上一篇

发表评论

评论列表

还没有人评论哦~赶快抢占沙发吧~