之前我们介绍的MongoDB的操作都是在shell命令中写的,在项目开发时我们当然都是用程序去操作MongoDB的,本文我们来看看如何用Java代码操作MongoDB。
本文是MongoDB系列的第十九篇文章,了解前面的文章有助于更好的理解本文:
准备工作
首先我们需要驱动,MongoDB的Java驱动我们可以直接在Maven中央仓库去下载,也可以创建Maven工程添加如下依赖:
建议通过Maven来添加依赖,如果自己下载jar,需要下载如下三个jar:
1.org.mongodb:bson:jar:3.5.0
2.org.mongodb:mongodb-driver-core:jar:3.5.0
3.org.mongodb:mongodb-driver:jar:3.5.0
另外,在使用Java操作MongoDB之前,记得启动MongoDB哦~
获取集合
所有准备工作完成之后,我们首先需要一个MongoClient,如下:
然后通过如下方式获取一个数据库,如果要获取的数据库本身就存在,直接获取到,不存在MongoDB会自动创建:
然后通过如下方式获取一个名为c1的集合,这个集合存在的话就直接获取到,不存在的话MongoDB会自动创建出来,如下:
有了集合之后,我们就可以向集合中插入数据了。
增
和在shell中的操作一样,我们可以一条一条的添加数据,也可以批量添加,添加单条数据操作如下:
添加多条数据的操作如下:
改
可以修改查到的第一条数据,操作如下:
上例中小伙伴们也看到了修改器要如何使用,不管是inc,用法都一致,我这里不再一个一个演示。也可以修改查到的所有数据,如下:
删
可以删除查到的一条数据,如下:
也可以删除查到的所有数据:
Filters里边还有其他的查询条件,都是见名知意,不赘述。
查
可以直接查询所有文档:
也可以按照条件查询:
其他的方法基本都是见名知意,这里不再赘述。
验证问题
上面我们演示的获取一个集合是不需要登录MongoDB数据库的,如果需要登录,我们获取集合的方式改为下面这种:
MongoCredential是一个凭证,第一个参数为用户名,第二个参数是要在哪个数据库中验证,第三个参数是密码的char数组,然后将登录地址封装成一个ServerAddress,最后将两个参数都传入MongoClient中实现登录功能。
其他配置
在连接数据库的时候也可以设置连接超时等信息,在MongoClientOptions中设置即可,设置方式如下:
好了,Java操作MongoDB我们就先说到这里,小伙伴们有问题欢迎留言讨论。
参考资料:
1.《MongoDB权威指南第2版》
更多资料请关注公众号:
领取专属 10元无门槛券
私享最新 技术干货