服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - MongoDB - MongoDB系列教程(六):java操作mongodb实例

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

2020-05-01 17:51MongoDB教程网 MongoDB

这篇文章主要介绍了MongoDB系列教程(六):java操作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

 

 

延伸 · 阅读

精彩推荐
  • MongoDBMongodb数据库误删后的恢复方法(两种)

    Mongodb数据库误删后的恢复方法(两种)

    本文给大家分享两种方法来实现Mongodb数据库误删后的恢复,每种方法给大家介绍的都非常详细,需要的朋友参考下吧 ...

    fyg05249922020-05-18
  • MongoDBMongoDB 简单入门教程(安装、基本概念、创建用户)

    MongoDB 简单入门教程(安装、基本概念、创建用户)

    这篇文章主要介绍了MongoDB 简单入门教程(安装、基本概念、创建用户)的相关资料,帮助大家更好的理解和学习使用MongoDB数据库,感兴趣的朋友可以了解下...

    AsiaYe6352021-05-10
  • MongoDBMongo服务重启异常问题的处理方法

    Mongo服务重启异常问题的处理方法

    这篇文章主要给大家介绍了关于Mongo服务重启异常问题的处理方法,这个问题其实还是挺常见的,通过此文学习处理方法,以后遇到了就不会措手不及的,需要的...

    Leafage11842021-08-24
  • MongoDBMongoDB 学习笔记

    MongoDB 学习笔记

    最近在学习MongoDB,小结一下,主要都是一些基础知识,需要的朋友可以参考下 ...

    服务器之家3412020-04-25
  • MongoDBMongoDB分片测试

    MongoDB分片测试

    分片是mongoDB扩展的一种方式。分片分割一个collection并将不同的部分存储在不同的机器上,本文给大家介绍MongoDB分片测试,需要的朋友参考下吧 ...

    我思,故我在5532020-05-05
  • MongoDBMongoDB简单操作示例【连接、增删改查等】

    MongoDB简单操作示例【连接、增删改查等】

    这篇文章主要介绍了MongoDB简单操作,涉及命令行窗口下使用MongoDB进行简单的连接、增删改查等相关操作技巧,需要的朋友可以参考下 ...

    tinyphp2982020-05-23
  • MongoDB将MongoDB加入到Windows的本地服务项的方法

    将MongoDB加入到Windows的本地服务项的方法

    下面主要针对MongoDB在Windows下加入本地服务项做一些简单的分享。以方便刚接触MongoDB并在Windows环境下进行开发的同学 ...

    MongoDB教程网3012020-04-28
  • MongoDBMongodb如何开启用户访问控制详解

    Mongodb如何开启用户访问控制详解

    默认启动 MongoDB 服务时没有任何参数,可以对数据库任意操 作,而且可以远程访问数据库,所以推荐开发阶段可以不设置任何参数,但对于生产环境还是要...

    不争5402020-05-10