查看: 3607|回复: 0

java连接MongoDB实例

[复制链接]
论坛徽章:
65
生肖徽章2007版:龙
日期:2012-04-26 14:03:05生肖徽章2007版:龙
日期:2012-04-26 14:03:05生肖徽章2007版:龙
日期:2012-04-26 14:03:05生肖徽章2007版:龙
日期:2012-04-26 14:03:05生肖徽章2007版:龙
日期:2012-04-26 14:03:05生肖徽章2007版:龙
日期:2012-04-26 14:03:05蓝锆石
日期:2012-04-26 13:39:45开发板块每日发贴之星
日期:2012-04-26 14:03:05ERP板块每日发贴之星
日期:2012-04-26 14:03:05行业板块每日发贴之星
日期:2012-04-26 14:03:05
跳转到指定楼层
1#
发表于 2012-2-29 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  • import java.net.UnknownHostException;   
  • 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;   
  •   
  • public class Test {   
  •   
  •     /**  
  •      * @author gaogao  
  •      * @param args  
  •      * @throws MongoException  
  •      * @throws UnknownHostException  
  •      */  
  •     public static void main(String[] args) throws UnknownHostException,   
  •             MongoException {   
  •         // TODO Auto-generated method stub   
  •         // 连接本地数据库   
  •         Mongo m = new Mongo();   
  •         // 创建名为new_test_db的数据库   
  •         DB db = m.getDB("new_test_db");   
  •         // 获取new_test_db中的集合(类似于获取关系数据库中的表)   
  •         Set<String> cols = db.getCollectionNames();   
  •         // 打印出new_test_db中的集合,这里应当为null   
  •         for (String s : cols) {   
  •             System.out.println(s);   
  •         }   
  •         // 创建一个叫做"new_test_col"的集合   
  •         DBCollection collection = db.getCollection("new_test_col");   
  •         // 初始化一个基本DB对象,最终插入数据库的就是这个DB对象   
  •         BasicDBObject obj = new BasicDBObject();   
  •         // 放入几个键值对   
  •         obj.put("from", "搞搞");   
  •         obj.put("to", "宝宝");   
  •         obj.put("subject", "狗子爱宝子");   
  •         //插入对象   
  •         collection.insert(obj);   
  •         //查看一条记录,findOne()=find().limit(1);   
  •         DBObject dbobj=collection.findOne();   
  •         //打印出刚才插入的数据   
  •         System.out.println(dbobj);   
  •         //现在我们来插入9条{ranking:i}的数据   
  •         for(int i=0;i<9;i++){   
  •             collection.insert(new BasicDBObject().append("ranking", i));   
  •         }   
  •         //打印集合中的数据总数,这里应当输出10   
  •         System.out.println(collection.getCount());   
  •         //下面我们来遍历集合,find()方法返回的是一个游标(cursor),这里的概念和关系数据库很相似   
  •         DBCursor cursor=collection.find();   
  •         //然后我们使用这个游标来遍历集合   
  •         while(cursor.hasNext()){   
  •             System.out.println(cursor.next());   
  •         }   
  •         //下面来看一些略复杂一点的查询技巧,第一个,简单的条件查询,查询ranking为1的记录   
  •         BasicDBObject query=new BasicDBObject();   
  •         query.put("ranking", 1);   
  •         cursor=collection.find(query);   
  •         while(cursor.hasNext()){   
  •             System.out.println(cursor.next());   
  •         }   
  •         //下面是更复杂的条件查询,查询ranking大于5小于9的记录   
  •         query=new BasicDBObject();   
  •         query.put("ranking", new BasicDBObject("$gt", 5).append("$lt", 9));   
  •         cursor=collection.find(query);   
  •         while(cursor.hasNext()){   
  •             System.out.println(cursor.next());   
  •         }   
  •         //最后删除我们的测试数据库   
  •         m.dropDatabase("new_test_db");   
  •     }   
  • }  



您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表