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

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

代码例如以下所看到的:

  1. <pre name="code" class="java">package com.mkyong.core;
  2.  
  3. import java.net.UnknownHostException;
  4. import java.util.Date;
  5. import com.mongodb.BasicDBObject;
  6. import com.mongodb.DB;
  7. import com.mongodb.DBCollection;
  8. import com.mongodb.DBCursor;
  9. import com.mongodb.Mongo;
  10. import com.mongodb.MongoException;
  11.  
  12. /**
  13. * Java + MongoDB Hello world Example
  14. *
  15. */
  16. public class App {
  17. public static void main(String[] args) {
  18.  
  19. try {
  20.  
  21. /**** Connect to MongoDB ****/
  22. // Since 2.10.0, uses MongoClient
  23. //MongoClient mongo = new MongoClient("localhost", 27017);
  24.  
  25. Mongo mongo = new Mongo("127.0.0.1",27017);
  26.  
  27. /**** Get database ****/
  28. // if database doesn't exists, MongoDB will create it for you
  29. DB db = mongo.getDB("testMongoDb");
  30. //database username root and password root
  31. boolean ok = db.authenticate("root","root".toCharArray());
  32. if(ok){
  33. System.out.println("db connection success!");
  34.  
  35. }{
  36. System.out.println("db connection fail !
  37.  
  38. ");
  39. }
  40. /**** Get collection / table from 'testMongoDb' ****/
  41. // if collection doesn't exists, MongoDB will create it for you
  42. DBCollection table = db.getCollection("user");
  43.  
  44. /**** Insert ****/
  45. // create a document to store key and value
  46. BasicDBObject document = new BasicDBObject();
  47. document.put("name", "mkyong");
  48. document.put("age", 30);
  49. document.put("createdDate", new Date());
  50. table.insert(document);
  51.  
  52. /**** Find and display ****/
  53. BasicDBObject searchQuery = new BasicDBObject();
  54. searchQuery.put("name", "mkyong");
  55.  
  56. DBCursor cursor = table.find(searchQuery);
  57.  
  58. while (cursor.hasNext()) {
  59. System.out.println(cursor.next());
  60. }
  61.  
  62. /**** Update ****/
  63. // search document where name="mkyong" and update it with new values
  64. BasicDBObject query = new BasicDBObject();
  65. query.put("name", "mkyong");
  66.  
  67. BasicDBObject newDocument = new BasicDBObject();
  68. newDocument.put("name", "mkyong-updated");
  69.  
  70. BasicDBObject updateObj = new BasicDBObject();
  71. updateObj.put("$set", newDocument);
  72.  
  73. table.update(query, updateObj);
  74.  
  75. /**** Find and display ****/
  76. BasicDBObject searchQuery2
  77. = new BasicDBObject().append("name", "mkyong-updated");
  78.  
  79. DBCursor cursor2 = table.find(searchQuery2);
  80.  
  81. while (cursor2.hasNext()) {
  82. System.out.println(cursor2.next());
  83. }
  84.  
  85. /**** Done ****/
  86. System.out.println("Done");
  87.  
  88. } catch (UnknownHostException e) {
  89. e.printStackTrace();
  90. } catch (MongoException e) {
  91. e.printStackTrace();
  92. }
  93.  
  94. }
  95. }
  1.  

控制台输入结果例如以下:

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://download.csdn.net/detail/lovesummerforever/8047875

MongoDB(六)java操作mongodb增删改查的更多相关文章

  1. 6. MongoDB——Java操作(增删改查)

    转自:https://blog.csdn.net/kai402458953/article/details/79626148 import java.net.UnknownHostException; ...

  2. MongoDB学习day04--NodeJs操作数据库增删改查

    一.在Nodejs中使用Mongodb Nodejs需要引入的包 npm install mongodb --save -dev 或者使用镜像 cnpm install mongodb --save ...

  3. MongoDB数据库的操作,增删改查

    在student集合中插入一些数据 db.student.insert({ "学号":10010, "姓名":"德莱文", "年龄 ...

  4. java操作数据库增删改查的小工具1--TxQueryRunner

    在java程序中,一般使用jdbc连接数据库,比较麻烦,在看传智教程时学了一个工具类,用于简化与数据库之间的操作步骤,就是TxQueryRunner,他是QueryRunner的子类,用起来和他是一样 ...

  5. java操作数据库增删改查的小工具2--TxQueryRunner

    当涉及到多表查询时,如数据库中有两张表分别为t_person和t_address,表结构如下: 其中t_person的外键为t-address的主键aid, 新建两个javaBean类,Person ...

  6. 使用python操作XML增删改查

    使用python操作XML增删改查 什么是XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输 ...

  7. js操作indexedDB增删改查示例

    js操作indexedDB增删改查示例 if ('indexedDB' in window) { // 如果数据库不存在则创建,如果存在但是version更大,会自动升级不会复制原来的版本 var r ...

  8. MySQL数据分析(16)— 数据操作之增删改查

    前面我们说学习MySQL要从三个层面,四大逻辑来学,三个层面就是库层面,表层面和数据层面对吧,数据库里放数据表,表里放数据是吧,大家可以回忆PPT中jacky的这图,我们已经学完了库层面和表层面,从本 ...

  9. Redis简单的数据操作(增删改查)

    #Redis简单的数据操作(增删改查): 字符串类型 string 1. 存储: set key value 127.0.0.1:6379> set username zhangsan OK 2 ...

  10. MongoDB(二)-- Java API 实现增删改查

    一.下载jar包 http://central.maven.org/maven2/org/mongodb/mongo-java-driver/ 二.代码实现 package com.xbq.mongo ...

随机推荐

  1. [P3097] [USACO13DEC] [BZOJ4094] 最优挤奶Optimal Milking 解题报告(线段树+DP)

    题目链接:https://www.luogu.org/problemnew/show/P3097#sub 题目描述 Farmer John has recently purchased a new b ...

  2. PGA和UGA内存的使用情况

    引用thomas kyte的PGA和UGA的统计内存的使用情况,用排序区不同的大小来查看pga.UGA.物理读取不同内存使用 会话1:创建测试表和测试不同排序大小 create table t as ...

  3. ELK到底是什么?那么多公司用!__转载

    Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用ELK!ELK!ELK! ELK竟然重复了三遍,是个什么?   一.ELK ...

  4. UI Framework-1: Aura Event Handling

    Event Handling A diagram of the architecture of this system:     HWNDMessageHandler owns the WNDPROC ...

  5. tensorboard 使用

    TensorBoard是TensorFlow 的可视化工具.主要为了更方便用户理解 TensorFlow 程序.调试与优化,用户可以用 TensorBoard 来展现 TensorFlow 图像,绘制 ...

  6. Centos安装masscan

    1.yum install git gcc make libpcap-devel2.git clone https://github.com/robertdavidgraham/masscan3.cd ...

  7. center os 7最小化安装后按table无法补全命令的问题

    闲来无趣,这两天huskiesir又重新安装了下center os 7操作系统,结果呢,发现一个问题:按table键无法补全命令啊. 咦,奇怪了,这次怎么回事,完全没遇到过啊.哦,回想了一下,和以往的 ...

  8. shell脚本不同运行方式的差异

    说明:以下是个人的见解,不一定都正确,如有错误,欢迎指正! 一,shell脚本的运行方式,最常见的有以下几种: 1 )  . xxx.sh,注意,前面是一个点'.' 2 ) source xxx.sh ...

  9. 紫书 习题 10-5 UVa 1213(01背包变形)

    这里就是01背包多了一维物品个数罢了 记得不能重复所以有一层循环顺序要倒着来 边界f[0][0] = 1 #include<cstdio> #include<vector> # ...

  10. 如何在Google Play上通过电脑下载apk

    操作步骤: 1.首先打开翻 墙软件. 2.键入网址:http://apps.evozi.com/apk-downloader/ 3.将Google Play里apk的网址,复制到“Package na ...