您的位置:首页 > 数据库 > Mongodb

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

2015-05-07 00:00 1056 查看
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