MongoDB 使用json存储数据.

package com.ys;

import java.net.UnknownHostException;

import java.util.Date;

import java.util.List;

import java.util.Set;

import com.mongodb.BasicDBObject;

import com.mongodb.DB;

import com.mongodb.DBCollection;

import com.mongodb.DBCursor;

import com.mongodb.DBObject;

import com.mongodb.Mongo;

import com.mongodb.MongoException;

/**

* @author yansheng

*

*/

public class HelloMongo {

public static void main(String[] args) throws UnknownHostException,

MongoException {

// 1.连接Mongo

Mongo conn = new Mongo("localhost");

// Mongo conn = new Mongo("localhost", 27017);

// Mongo conn = new Mongo("localhost", "mydb");

// Mongo conn = new Mongo("localhost", 27017, "mydb");

// 2.遍历数据库

List dbList = conn.getDatabaseNames();

for (String s : dbList) {

System.out.println(s);

}

// 3.获得db,遍历集合列表

DB db = conn.getDB("admin");

Set colls = db.getCollectionNames();

for (String s : colls) {

System.out.println(s);

}

// 登录db

boolean auth = db.authenticate("user", "password".toCharArray());

// 4.获得一个集合,如果COLLECTION不存在,则MongoDB会自动为你创建此collection

DBCollection coll = db.getCollection("testCollection");

// 5.插入数据

BasicDBObject doc = new BasicDBObject();

doc.put("name", "MongoDB");

doc.put("type", "database");

doc.put("count", 1);

DBObject info = new BasicDBObject();

info.put("x", 203);

info.put("y", 102);

doc.put("info", info);

coll.insert(doc);

// 6.使用findOne()查找集合中第一个文档

/*

* 注意_id和_ns元素是由MongoDB自动加入你的文档。 记住:MongoDB内部存储使用的元素名是以“_”做为开始。

*/

DBObject myDoc = coll.findOne();

System.out.println(myDoc);

// 7.统计文档数量

System.out.println(coll.getCount());

// 8.使用光标(cursor)来获取全部文档

DBCursor cur = coll.find();

while (cur.hasNext()) {

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

}

// 9.在查询中获取单一文档

BasicDBObject query = new BasicDBObject();

query.put("i", 71);

cur = coll.find(query);

while (cur.hasNext()) {

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

}

// 10.使用条件查询获取集合

// 例如,我们想要查询所有i>50的文档:

BasicDBObject query_1 = new BasicDBObject();

query_1.put("i", new BasicDBObject("$gt", 50));

cur = coll.find(query_1);

while (cur.hasNext()) {

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

}

// 做20 < i <= 30的查询

BasicDBObject query_2 = new BasicDBObject();

query_2.put("i", new BasicDBObject("$gt", 20).append("$lte", 30));

cur = coll.find(query_2);

while (cur.hasNext()) {

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

}

// 11.创建索引,指定升序(1)或降序(-1)

coll.createIndex(new BasicDBObject("i", 1));

// 12.获取索引列表

List list = coll.getIndexInfo();

for (DBObject o : list) {

System.out.println(o);

}

// 13.MongoDB管理函数

// 例A:获取数据库列表

// MongoAdmin admin = new MongoAdmin();

// for(String s : admin.getDatabaseNames()){

// System.out.println(s);

// }

//

// 例B:获取数据库对象

// Mongo m = admin.getDB("mydb");

//

// 例C:删除数据库

// admin.dropDatabase("mydb");

//13.用DBObject存储JAVA对象

// 例如,存在一个需要存储的对象类Tweet

Tweet myTweet_1 = new Tweet();

myTweet_1.put("user", 001);

myTweet_1.put("message", "message");

myTweet_1.put("date", new Date());

coll.insert(myTweet_1);

// 当一个文档从MongoDB中取出时,它会自动把文档转换成DBObject接口类型,要将它实例化为你的对象

coll.setObjectClass(Tweet.class);

Tweet myTweet_2 = (Tweet)coll.findOne();

// 14.JAVA驱动的并发性

db.requestStart();

// code.........

db.requestDone();

}

}

分享到:

2011-10-17 13:56

浏览 641

评论

java mongodb开发_Java 操作 MongoDB相关推荐

  1. 【源码+图片素材+详细教程】Java游戏开发_Java开发经典游戏飞翔的小鸟_飞扬的小鸟_Java游戏项目Flappy Bird像素鸟游戏_Java课程设计项目

    课程目标: 1.通过本课程的学习巩固Java的相关基础知识,例如循环判断,数组和集合的使用,对象的继承,接口的实现,窗口的创建,事件监听,图形绘制. 2.完成小鸟的移动,管道自动生成.碰撞死亡,计分系 ...

  2. java mongodb开发_Java Tutorial:Java操作MongoDB入门

    [IT168 技术]个人编译能力有限,以下提供英汉对照,欢迎讨论指正. Introduction 介绍 This page is a brief overview of working with th ...

  3. java mongodb 增删改查_java操作mongodb:基本的增删改查

    java操作mongodb的代码,包含基本的增删改查操作 获取数据库连接工具类 package com.liuc.db;import java.net.UnknownHostException;imp ...

  4. java mongodb 模糊查询_Java操作MongoDB插入数据进行模糊查询与in查询功能的方法

    Java操作MongoDB插入数据进行模糊查询与in查询功能 由于需要用MongoDB缓存数据,所以自己写了一套公共的存放和读取方法 具体如下: 存放mongodb: /** * 公共方法:设置Obj ...

  5. java操作mongodb查询总数_java操作mongodb——查询数据

    field为查询字段,value为查询值,也可以通过过滤器Filters,Filters提供了一系列查询条件的静态方法 相等 - = FindIterable iter = doc.find(new ...

  6. java mongodb条件查询_java 操作mongodb查询条件的常用设置

    java操作mongodb进行查询,常用筛选条件的设置如下: 条件列表: BasicDBList condList = new BasicDBList(); 临时条件对象: BasicDBObject ...

  7. java mongodb排序查询_java操作mongodb基础(查询 排序 输出list)

    代码如下: package com.infomorrow.webroot; import java.util.List; import com.mongodb.BasicDBObject; impor ...

  8. mongodb java驱动_Java操作MongoDB之mongodb-driver(一)

    1. mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动. (1)通过maven仓库导入:https://mvnrepository.com/ar ...

  9. MongoDB - 使用Python操作MongoDB

    使用Python操作MongoDB数据库 CSDN:jcLee95 邮箱 :291148484@163.com CSDN 主页:https://blog.csdn.net/qq_28550263?sp ...

最新文章

  1. android studio annotations,AndroidAnnotations在Android Studio中的配置
  2. php msf dev product,3 框架运行环境
  3. iOS开发之如何将字典转为模型
  4. 中国企业海外人才发展白皮书
  5. usb接口 spec_USB连接器发展演变和趋势
  6. 每日小记 2017.2.26
  7. 很实用的,GridView中使用DataFormatString属性格式化内容
  8. 2021年了!!Xshell7新手下载和安装教程(步骤超详细),以及远程与虚拟机连接
  9. YUV与RGB格式转换
  10. PS自学教程是Ads设计必备 盘点精彩对比式Ads
  11. java f5 f6_eclipse debug常见调试 F6 单步 F8完成 F5进入方法
  12. 分析DuxCms之AdminUserModel
  13. 化合物相似性搜索_SCIFINDER相似结构搜索教程
  14. IE无法打开internet站点已终止操作的解决办法
  15. 使用AKO为TKG提供LoadBalancer
  16. python改变图像颜色_通过python改变图片特定区域的颜色详解
  17. chatbot 资料汇总
  18. RadosClient OSDC
  19. POJ - 1190 - 生日蛋糕 (深搜剪枝)
  20. HDU - 相遇周期(gcd,lcm)

热门文章

  1. 多进程log4j日志丢失问题分析
  2. 华为服务器2288h v5安装系统,华为2288装系统
  3. 计算机的创新知识,创新高中计算机知识学习的策略分析
  4. 网页数据获取小技巧(小白)
  5. 浅谈微信三级分销系统的漏洞
  6. 老婆背着我在豆瓣发帖:没事别嫁程序员!
  7. java ee字体_[分享] 23种漂亮的字体代码,
  8. 深度学习中,偏置(bias)在什么情况下可以要,可以不要?
  9. 计算机广告设计发展前景,2018广告设计与制作专业就业前景和就业方向分析
  10. 如何选购笔记本电脑?