当前位置: 首页 > 编程笔记 >

MongoDB系列教程(六):java操作mongodb实例

景高杰
2023-03-14
本文向大家介绍MongoDB系列教程(六):java操作mongodb实例,包括了MongoDB系列教程(六):java操作mongodb实例的使用技巧和注意事项,需要的朋友参考一下

java操作mysql数据库的代码我们已经了如指掌了,增删改查,java对mongodb数据库也是类似的操作,先是数据库连接,再是进行操作。

首先我们进入进入admin数据库,然后建立自己的数据库testMongoDb,进入admin数据库后,就可以直接进入testMongoDb,因为用户可以进入系统的数据库,就是超级管理员,use testMongoDb后,为该数据库设置用户名和密码,db.addUser('root','root'),这样我们在程序中连该数据库,并实现增删改查,代码如下所示。

代码如下所示:


package com.mkyong.core;  

  

import java.net.UnknownHostException;  

import java.util.Date;  

import com.mongodb.BasicDBObject;  

import com.mongodb.DB;  

import com.mongodb.DBCollection;  

import com.mongodb.DBCursor;  

import com.mongodb.Mongo;  

import com.mongodb.MongoException;  

  

/** 

 * Java + MongoDB Hello world Example 

 *  

 */  

public class App {  

    public static void main(String[] args) {  

  

        try {  

  

            /**** Connect to MongoDB ****/  

            // Since 2.10.0, uses MongoClient  

            //MongoClient mongo = new MongoClient("localhost", 27017);  

              

            Mongo mongo = new Mongo("127.0.0.1",27017);  

              

            

            /**** Get database ****/  

            // if database doesn't exists, MongoDB will create it for you  

            DB db = mongo.getDB("testMongoDb");  

            //database username  root  and password root   

            boolean ok = db.authenticate("root","root".toCharArray());  

            if(ok){  

                System.out.println("db connection success!");  

                  

            }{  

                System.out.println("db connection fail !");  

            }  

            /**** Get collection / table from 'testMongoDb' ****/  

            // if collection doesn't exists, MongoDB will create it for you  

            DBCollection table = db.getCollection("user");  

  

            /**** Insert ****/  

            // create a document to store key and value  

            BasicDBObject document = new BasicDBObject();  

            document.put("name", "mkyong");  

            document.put("age", 30);  

            document.put("createdDate", new Date());  

            table.insert(document);  

  

            /**** Find and display ****/  

            BasicDBObject searchQuery = new BasicDBObject();  

            searchQuery.put("name", "mkyong");  

  

            DBCursor cursor = table.find(searchQuery);  

  

            while (cursor.hasNext()) {  

                System.out.println(cursor.next());  

            }  

  

            /**** Update ****/  

            // search document where name="mkyong" and update it with new values  

            BasicDBObject query = new BasicDBObject();  

            query.put("name", "mkyong");  

  

            BasicDBObject newDocument = new BasicDBObject();  

            newDocument.put("name", "mkyong-updated");  

  

            BasicDBObject updateObj = new BasicDBObject();  

            updateObj.put("$set", newDocument);  

  

            table.update(query, updateObj);  

  

            /**** Find and display ****/  

            BasicDBObject searchQuery2   

                = new BasicDBObject().append("name", "mkyong-updated");  

  

            DBCursor cursor2 = table.find(searchQuery2);  

  

            while (cursor2.hasNext()) {  

                System.out.println(cursor2.next());  

            }  

  

            /**** Done ****/  

            System.out.println("Done");  

  

        } catch (UnknownHostException e) {  

            e.printStackTrace();  

        } catch (MongoException e) {  

            e.printStackTrace();  

        }  

  

    }  

}  

控制台输入结果如下:


    db connection success!

    db connection fail !

{ "_id" : { "$oid" : "544073c4d58dfa6e469555ba"} , "name" : "mkyong" , "age" : 30 , "createdDate" : { "$date" : "2014-10-17T01:41:24.479Z"}}

{ "_id" : { "$oid" : "543e154bd58d704982fd38f0"} , "name" : "mkyong-updated" , "age" : 30 , "createdDate" : { "$date" : "2014-10-15T06:33:47.321Z"}}

{ "_id" : { "$oid" : "5440719dd58d08a207605c8e"} , "name" : "mkyong-updated" , "age" : 30 , "createdDate" : { "$date" : "2014-10-17T01:32:13.922Z"}}

{ "_id" : { "$oid" : "544073c4d58dfa6e469555ba"} , "name" : "mkyong-updated" , "age" : 30 , "createdDate" : { "$date" : "2014-10-17T01:41:24.479Z"}}

Done


源码下载:http://xiazai.jb51.net/201503/other/mongodb_helloworld.zip

 类似资料:
  • 本文向大家介绍MongoDB系列教程(二):MongoDB简介,包括了MongoDB系列教程(二):MongoDB简介的使用技巧和注意事项,需要的朋友参考一下 MongoDB介绍           MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常的松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。

  • 本文向大家介绍MongoDB教程之查询操作实例,包括了MongoDB教程之查询操作实例的使用技巧和注意事项,需要的朋友参考一下 1.  基本查询:     构造查询数据。   2.  查询条件:     MongoDB提供了一组比较操作符:$lt/$lte/$gt/$gte/$ne,依次等价于</<=/>/>=/!=。     3.  null数据类型的查询: 4.  正则查询: 5.  数组数据

  • 本文向大家介绍MongoDB教程之数据操作实例,包括了MongoDB教程之数据操作实例的使用技巧和注意事项,需要的朋友参考一下 1.  批量插入:      以数组的方式一次插入多个文档可以在单次TCP请求中完成,避免了多次请求中的额外开销。就数据传输量而言,批量插入的数据中仅包含一份消息头,而多次单条插入则会在每次插入数据时封装消息头数据。对于数据导入而言,我们可以使用mongoimport完成

  • 主要内容:环境配置,连接数据库,创建集合,获取/选择集合,插入文档,查询文档,更新文档,删除文档,删除集合,列出所有集合MongoDB 不仅可以在命令行窗口(CMD)中运行,它还可以与编程语言配合使用,本节我们就来介绍一下在 Java 中如何使用 MongoDB。 环境配置 想要在 Java 程序中使用 MongoDB,需要确保您的电脑上已经安装了 MongoDB,并搭建好了 Java 的环境。您可以查看《 Java 教程》来了解不同系统下 Java 的安装教程。 另外您还需要确认安装了 Mon

  • 本文向大家介绍MongoDB系列教程(一):NoSQL起源,包括了MongoDB系列教程(一):NoSQL起源的使用技巧和注意事项,需要的朋友参考一下 为什么出现NoSQL? 随着互联网的发展,当我们把一台服务器一台服务器变成两台服务器,当我们开始建立数据备份,当我们需要加一个缓冲层,来调整所有的查询,投入更多的硬件。 最后,需要将数据切分多个集群上,并重构大量的应用逻辑以适应这种切分。不久之后,

  • 本文向大家介绍MongoDB入门教程之C#驱动操作实例,包括了MongoDB入门教程之C#驱动操作实例的使用技巧和注意事项,需要的朋友参考一下 作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者, 因为提供了丰富的linq操作,相当方便。 官方驱动:https://github.com/mongodb/mongo-cshar