`
wode66
  • 浏览: 746264 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

初识MongoDB(四)--MongoDB客户端Java方式访问

阅读更多

在MongoDB的官网已经很详细的介绍了各种客户端的使用,其中也包括java的,在此,仅对几个比较疑惑的地方做个标注:

(1)、如何向db中添加collection?

如果在api文档中找不到答案,那就去看源代码吧。可以看到com.mongodb.DB类中是如何定义getCollection方法的。其中DB类是抽象类,且doGetCollection(name)方法也是抽象的。

/**
     * Gets a collection with a given name.
     * If the collection does not exist, a new collection is created.
     * @param name the name of the collection to return
     * @return the collection
     */
    public final DBCollection getCollection( String name ){
        DBCollection c = doGetCollection( name );
        return c;
    }

 

可见,当调用db.getCollection( String name )方法时,如果以name命名的collection不存在,则自动创建一个,并返回。

 

(2)、BasicDBObject的append和put两个方法有何区别?

首先看一下BasicDBObject的继承结构,com.mongodb.BasicDBObject --》com.mongodb.DBObject(接口)  --》org.bson.BSONObject(接口)。

其中,put( String key , Object v )方法是BSONObject接口定义的,具体定义如下:

public interface BSONObject {
    /**
     * Sets a name/value pair in this object.
     * @param key Name to set
     * @param v Corresponding value
     * @return <tt>v</tt>
     */
    public Object put( String key , Object v );
}

  append( String key , Object val )方法的定义是在BasicDBObject类中,具体定义如下:

public class BasicDBObject extends BasicBSONObject implements DBObject {
	@Override
    public BasicDBObject append( String key , Object val ){
        put( key , val );
        return this;
    }
}

  可以看出,put方法返回的是value值,而append方法返回的是对象本身,这样就可以向使用链式的方式添加数据,如:new BasicDBObject().append("username","zhang").append("password","111111");

 

参考资料:

MongDB的java客户端使用:http://www.mongodb.org/display/DOCS/Java+Tutorial

MongDB源代码下载地址:https://github.com/mongodb/mongo-java-driver(点击“switch tag”选择相应版本下载)

MongDB集成后的jar下载地址:https://github.com/mongodb/mongo-java-driver/downloads

MongDB的java客户端API解释:http://api.mongodb.org/java/

分享到:
评论

相关推荐

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    1.5 初识MongoDB 1.5.1 MongoDB的特点 1.5.2 数据模型 1.5.3 扩展性 1.5.4 功能性 1.5.5 速度快 1.5.6 简便的管理 1.5.7 使用场合 1.6 本章小结 第2章 MongoDB基本原理与安装 2.1 数据库...

    深入云计算 MongoDB管理与开发实战详解pdf.part2

    1.5 初识MongoDB 1.5.1 MongoDB的特点 1.5.2 数据模型 1.5.3 扩展性 1.5.4 功能性 1.5.5 速度快 1.5.6 简便的管理 1.5.7 使用场合 1.6 本章小结 第2章 MongoDB基本原理与安装 2.1 数据库...

    Java思维导图xmind文件+导出图片

    MongoDB可视化客户端及JavaApi实践 手写基于MongoDB的ORM框架 MongoDB企业级集解决方案 MongoDB聚合、索引及基本执行命令 MongoDB数据分片、转存及恢复策略 MyCat MySQL主从复制及读写分离实战 MySQL+...

    NoSQL数据库实习头歌实验知识点整理(更新中)

    从初识MongoDB的基本概念和服务部署,到深入理解数据库、集合和文档的创建、查询、更新和删除等操作;再到MongoDB的安全性配置,如创建管理员和普通用户,数据库访问限制;以及对聚合函数查询统计的掌握和索引创建、...

    初识前端后端UI

    他们使用诸如Java、Python、Ruby、PHP等服务器端语言,以及数据库管理系统如MySQL、MongoDB等。后端开发的目标是保证应用的稳定性和性能。 在前后端开发任务量的分析与比较中,前端开发通常更注重视觉效果和交互...

    全新校园跑腿小程序源码分享

    后端则需要掌握Node.js、Python、Java等服务器语言之一,以及数据库管理知识,如MySQL或MongoDB。 通过以上分析,我们可以看出,"全新校园跑腿小程序源码分享"是一个集成了多种校园服务的微信小程序,它的开发和...

Global site tag (gtag.js) - Google Analytics