网站大量收购独家精品文档,联系QQ:2885784924

《mongoDb基础开发(Java)》.pptx

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《mongoDb基础开发(Java)》.pptx

wedde;分享目标: 帮助开发人员快速掌握使用java进行mongoDB开发的基础知识,减少自主学习时间。 内容概述: mongoDB安装、shell操作、数据库基础管理、数据模型设计; Java开发基础,spring mongoTemplate使用(依赖库、配置、典型代码等),原生java驱动使用。 不包括的知识: 基础概述,Replication, Sharding, GridFS, 安全, 备份。 高级查询,聚合、js语句查询、GIS查询、游标、事务?;MongoDB管理基础 特点概述 数据模型设计 安装、管理 Shell操作 数据库基础管理 增删改查 Java开发基础 基于原生Java驱动开发 基于spring mongoTemplate开发;面向文档的数据库,以BSON格式存储,无schema。 与传统数据库的对应 集合(collection) - 表 文档(document) - 行记录(row) 关于事务 仅支持单文档的事务,不支持多文档的事务。 read uncommitted,写操作返回前,其他进程有可能读到写入的数据;即使写操作返回(?journal commits前),数据也可能丢失(断电/重启……)。 MongoDB倾向于使用更多的内存处理数据,缓存查询结果等。增加内存会有效提升性能。;每一个文档都有一个特殊的字段“_id”。 默认12字节,系统生成,时间4+机器3+进程2+计数3; 也可自己指定_id的值,保证唯一即可,比如自增序列。 单文档最大16M,但采用GridFS则无限制。 不需要遵循关系数据库的3NF原则,但在违反之前要有充分的理由。 数据模型设计要考虑:存储效率、查询、扩展性等。 考虑对象嵌套,数组/列表; 不支持join,根据查询行为考虑索引的创建; 考虑冗余数据,考虑文档大小的增长,优化性能;;一个客户有多个地址 类似: 书籍的借阅记录 某商品的评论 订单的物流记录 ……;书籍 - 出版社 类似: 朋友圈点赞 im好友分组 ;个性化推荐记录 ;Windows下安装 下载、执行安装 配置数据存储位置,所在磁盘的/data/db/ 可配置成后台服务随系统启动 Linux下安装(Ubuntu举例) 添加MongoDB的公钥 使用sudo apt-get install mongodb-org 启动 默认的数据存储位置在/data/db/,也可以在启动时通过命令行参数指定。;以Javascript语法交互的命令行程序。 可以定义变量/函数 启动shell: mongo 查看数据库列表:show dbs 切换到指定数据库:use [db name] 查看当前数据库集合列表:show collections 查看当前数据库信息:db.stats() 查看集合信息:db.[collection name].stats() 查看数据库当前状态:db.serverStatus() 删除当前数据库:db.dropDatabase();插入有三种方式:insert, save, upsert,适用不同场景。 举例: ducts.insert( { item: card, qty: 15 } ) db.inventory.save( { type: book, item: notebook, qty: 40 } ) db.inventory.update( { type: book, item : journal }, { $set : { qty: 10 } }, { upsert : true } ) 如果待保存对象不存在’_id’属性,则系统自动创建;如果有,则系统会检查是否唯一。;不支持类似join的语法,where子句使用json对象表达。 支持传统sql的各种运算符、逻辑表达式,更支持对数组和复杂对象的支持,使用json对象表达。 运算符: 比较,$gt, $gte, $lt, $lte, $ne 逻辑表达,$or, $and, $not, $nor 针对数组,$all, $elemMatch, $size 其他, $in, $nin, $exists 举例: db.customer.find({site:litb, custId:8421763}).pretty() db.inventory.find( { $or: [ { quantity: { $lt: 20 } }, { price: 10 } ] } );{ _id: 100, type: food, item: xyz, qty: 25, price: 2.5, memos: [ { memo: on time, by: shipping }, { memo

文档评论(0)

mwap + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档