java驱动程序是Mongodb中的驱动程序之一,也是比较成熟的Mongodb驱动程序之一,下面介绍了使用java连接、操作Mongodb。
一、安装java驱动程序
Mongodb的java驱动程序是一个jar包,可以在:https://github.com/mongodb/mongo-java-driver/downloads 下载,下载的jar导入到eclipse的项目中即可。
二、java操作Mongodb
java操作Mongodb常用的几个类:
Mongo:连接服务器,执行一些数据库操作的选项,如新建立一个数据库等
DB:对应一个数据库,可以用来建立集合等操作
DBCollection:对应一个集合(类似表),可能是我们用得最多的,可以添加删除记录等
DBObject接口和BasicDBObject对象:表示一个具体的记录,BasicDBObject实现了DBObject,是key-value的数据结构,用起来和HashMap是基本一致的。
DBCursor:用来遍历取得的数据,实现了Iterable和Iterator
- private static void mongodbOperating(){
- try {
- //有多种构造方法,选择一种(IP、port)
- Mongo m = new Mongo( "192.168.21.111" , 27017 );
- //选择数据库,如果没有这个数据库的话,会自动建立
- DB db = m.getDB( "mydb" );
- //建立一个集合,和数据库一样,如果没有,会自动建立
- DBCollection collection = db.getCollection("myCollectionTest");
- BasicDBObject doc = new BasicDBObject();
- doc.put("name", "MongoDB");
- doc.put("type", "database");
- doc.put("count", 1);
- BasicDBObject info = new BasicDBObject();
- info.put("x", 203);
- info.put("y", 102);
- doc.put("info", info);
- //插入一条数据,数据如下
- // {
- // "name" : "MongoDB",
- // "type" : "database",
- // "count" : 1,
- // "info" : {
- // x : 203,
- // y : 102
- // }
- // }
- // 可以循环插入多条数据
- collection.insert(doc);
- //查找第一条数据,显示如下,_id是系统自动帮加上的,全局唯一
- //{ "_id" : "49902cde5162504500b45c2c" , "name" : "MongoDB" , "type" : "database" , "count" : 1 , "info" : { "x" : 203 , "y" : 102}}
- DBObject myDoc = collection.findOne();
- System.out.println(myDoc);
- //插入多条数据
- for (int i=0; i < 100; i++) {
- collection.insert(new BasicDBObject().append("i", i));
- }
- //获取文档条数
- System.out.println(collection.getCount());
- //使用Cursor 获取所有文档
- DBCursor cursor = collection.find();
- try {
- while(cursor.hasNext()) {
- System.out.println(cursor.next());
- }
- } finally {
- cursor.close();
- }
- //查找操作,获取单条记录
- //{ "_id" : "49903677516250c1008d624e" , "i" : 71 }
- BasicDBObject query = new BasicDBObject();
- query.put("i", 71);
- cursor = collection.find(query);
- try {
- while(cursor.hasNext()) {
- System.out.println(cursor.next());
- }
- } finally {
- cursor.close();
- }
- //查找 i>50的项
- query = new BasicDBObject();
- query.put("i", new BasicDBObject("$gt", 50)); // e.g. find all where i > 50
- cursor = collection.find(query);
- try {
- while(cursor.hasNext()) {
- System.out.println(cursor.next());
- }
- } finally {
- cursor.close();
- }
- //查找 20<i<=30
- query = new BasicDBObject();
- query.put("i", new BasicDBObject("$gt", 20).append("$lte", 30)); // i.e. 20 < i <= 30
- cursor = collection.find(query);
- try {
- while(cursor.hasNext()) {
- System.out.println(cursor.next());
- }
- } finally {
- cursor.close();
- }
- //修改 i=71的一项
- query = new BasicDBObject();
- query.put("i", 71);
- BasicDBObject update = new BasicDBObject();
- update.put("i", 710);
- DBObject dbobj = collection.findAndModify(query, update);
- System.out.println(dbobj);
- //修改 i=72的一项
- query = new BasicDBObject();
- query.put("i", 72);
- update = new BasicDBObject();
- update.put("i", 720);
- WriteResult result = collection.update(query, update);
- System.out.println(result);
- //删除i=61的项
- query = new BasicDBObject();
- query.put("i", 61);
- collection.findAndRemove(query);
- //删除i=62的项
- BasicDBObject remove = new BasicDBObject();
- remove.put("i", 62);
- collection.remove(remove);
- //创建索引 1为升序、-1为降序
- collection.createIndex(new BasicDBObject("i", 1)); // create index on "i", ascending
- //获取索引列表
- List<DBObject> list = collection.getIndexInfo();
- for (DBObject o : list) {
- System.out.println(o);
- }
- //获取数据库列表
- for (String s : m.getDatabaseNames()) {
- System.out.println(s);
- }
- //获取集合列表
- Set<String> colls = db.getCollectionNames();
- for (String s : colls) {
- System.out.println(s);
- }
- //删除数据库
- //m.dropDatabase("my_new_db");
- } catch (UnknownHostException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
相关推荐
mongodb-java-driver-4.4.0.jar
赠送jar包:mongodb-driver-sync-4.2.3.jar; 赠送原API文档:mongodb-driver-sync-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-sync-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-sync-4.2.3....
赠送jar包:mongodb-driver-core-4.2.3.jar; 赠送原API文档:mongodb-driver-core-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-core-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-core-4.2.3....
赠送jar包:mongodb-driver-sync-4.2.3.jar; 赠送原API文档:mongodb-driver-sync-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-sync-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-sync-4.2.3....
java和mongodb连接,需要mongodb-driver,您还必须下载其依赖项: bson和 mongodb-driver-core》》3个包: mongodb-driver-3.8.2.jar; bson-3.8.2.jar; mongodb-driver-core-3.8.2.jar
亲测可用,解压包含三个jar包,引用时sources和doc包根据需要添加。 mongo-java-driver-3.5.0.jar; mongo-java-driver-3.5.0-javadoc.jar; mongo-java-driver-3.5.0-sources.jar;
`mongodb-driver-3.5.0.jar`是完整版的MongoDB Java驱动,它扩展了`mongodb-driver-core`,提供了更高级别的操作接口,如`MongoClient`和`MongoDatabase`,方便开发者进行数据库操作。这个驱动程序使开发者能够方便...
MongoDB异步驱动程序(mongodb-async-driver)是为Java开发者设计的一个库,它允许应用程序以非阻塞的方式与MongoDB服务器进行通信,提高了处理大量并发请求的能力。 在"mongodb-async-driver-2.0.1.jar"这个特定...
mongodb-async-driver-2.0.1驱动文件 jar MongoDB Async Java Driver Documentation Welcome to the MongoDB Async Java driver documentation hub. Getting Started The Getting Started guide contains ...
mongodb-driver-3.4.3,mongodb java开发中常用组件。
mongodb-driver-core-3.4.3,mongodb java开发常用组件。
<artifactId>mongodb-driver-sync <version>4.3.0 ``` 创建MongoDB连接: 要连接到MongoDB服务器,我们需要实例化`MongoClient`对象。这通常涉及提供服务器地址、端口以及(如果适用)认证信息: ```java ...
Java开发案例-springboot-25-整合MongoDB-源代码+文档.rar Java开发案例-springboot-25-整合MongoDB-源代码+文档.rar Java开发案例-springboot-25-整合MongoDB-源代码+文档.rar Java开发案例-springboot-25-整合...
在“mongodb-compass-community-1.16.4-win32-x64.zip”这个压缩包中,包含了MongoDB Compass的社区版,它可以帮助用户直观地查看和操作MongoDB数据库。以下是压缩包内各个文件的作用: 1. **snapshot_blob.bin**:...
这里提到的"Java连接mongoDB需要的jar包(3.9.1)"是指Java开发者用于连接MongoDB数据库的一组关键库文件,包括`bson-3.9.1.jar`、`mongodb-driver-3.9.1.jar`和`mongodb-driver-core-3.9.1.jar`。这些JAR文件是...
对于"mongodb-windows-x86_64-4.4.6-signed.msi"这个文件,它是Windows安装程序包,用于在Windows操作系统上部署MongoDB。用户只需解压下载的zip文件,然后运行msi安装程序,按照向导的步骤进行安装。安装过程中,你...
sudo apt-get install mongodb-org ``` 5. 启动MongoDB服务并设置开机启动: ``` sudo systemctl start mongod sudo systemctl enable mongod ``` 6. 验证MongoDB是否运行正常: ``` mongo --version ```...
赠送jar包:mongodb-driver-core-4.2.3.jar; 赠送原API文档:mongodb-driver-core-4.2.3-javadoc.jar; 赠送源代码:mongodb-driver-core-4.2.3-sources.jar; 赠送Maven依赖信息文件:mongodb-driver-core-4.2.3....
使用java 操作mongoDB必须的jar包,
java运行依赖jar包