3 年 Java 程序员还玩不转 MongoDB,网友:失望

liftword15小时前技术文章1


一、什么场景使用 MongoDB ?

也许你会说“你这个场景 Mysql 也能解决,没必要用 MongoDB ”,并没有某个业务场景必须要使用 MongoDB 才能解决,但使用 MongoDB 通常能让你以更低的成本解决问题(包括学习、开发、运维等成本)。


① 游戏场景,使用 MongoDB 存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储,方便查询、更新;

② 物流场景,使用 MongoDB 存储订单信息,订单状态在运送过程中会不断更新,以 MongoDB 内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来;

③ 社交场景,使用 MongoDB 存储存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点等功能;

④ 物联网场景,使用 MongoDB 存储所有接入的智能设备信息,以及设备汇报的日志信息,并对这些信息进行多维度的分析;

⑤ 视频直播,使用 MongoDB 存储用户信息、礼物信息等

二、MongoDB 特性

三、MongoDB 可视化工具

下载 Robot 3T 即可

四、 Robot 3T 的基本操作

1、连接数据库

添加成功,保存,连接即可

2、 使用

① 显示所有数据库

show dbs

MongoDB 副本集默认会创建 local、admin 数据库,

local 数据库主要存储副本集的元数据,

admin 数据库则主要存储 MongoDB 的用户、角色等信息。


② 创建和删除数据库

③ 创建和查看集合

每项数据在 MongoDB 中称之为 文档(document)


④ 更新文档

a.update () 方法用于更新已存在的文档

b.save () 方法通过传入的文档来替换已有文档,_id "主键"存在就更新,不存在就插入。

⑤ 查询文档

AND 和 OR 联合使用:

等同于 Mysql 中

where likes>50 AND (by = ' Python大星 ' OR title = 'MongoDB 教程 ')


模糊查询:

⑥ $type 操作符

如果想获取 "col" 集合中 title 为 String 的数据,你可以使用以下命令:

⑦ limit 与 skip 方法

limit:读取指定数量的数据;

skip:跳过指定数量的数据。

⑧ 排序

在 MongoDB 中使用 sort () 方法对数据进行排序,sort () 方法可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而 -1 是用于降序排列。

⑨ 索引


Key 值为你要创建的索引字段,1 为指定按升序创建索引,如果你想按降序来创建索引指定为 -1 即可

⑩ 聚合函数

根据 by 分组查询 likes 总数

五、SpringBoot 集成 MongoDb

1、配置文件

2、domin 层

3、service 层

4、单元测试


欢迎关注 @Python 大星 ,一个会点 Python 的 Java 程序员。如果你有更好的想法,欢迎留言,一起探讨,想说你就说啊!后面继续分享 Java 的相关开发,人少就散了吧!

@Python 大星 | 文

相关文章

从Java到Python学习指南(上篇)(java转python难吗)

一、环境搭建1. 安装 Python作为 Java 程序员,我们习惯了严谨的开发环境搭建。Python 的安装在 Windows 系统上同样简单明了。下载 Python 安装包:访问 Python 官...

C,Java和Python之间的性能比较(python,java,c语言有什么区别和联系)

这是我用所有三种语言运行矩阵乘法时发生的情况 在过去的两年中,我为C语言做了大量的实现工作。 我之所以选择C语言而不是其他语言,是因为人们普遍认为C代码比其他流行的编程语言(例如Java和Python...

Python和Java有什么区别吗?哪个就业更好-开课吧

Python是一个有着简单句法的多样性的语言。因为很多新手程序员会喜欢编写很少的代码,这使得Python被广泛应用于多个领域来写脚本,快速开发应用等等。Java是一个典型化的编程语言,这意味着变量名必...

Python Java Go三种语言做Web开发如何选择?

Python Java Go三种语言做Web开发如何选择? Python Java Go都可以做Web开发,有一定的重合度,假如你对这三种语言都很熟练,你如何选择何种语言来开发?在回答这个问题前,我们...

Java和Python哪个前景好?(python和java谁好)

Java和Python哪个前景好?想学习一门计算机技术,Java和Python哪个前景好点?对于这个问题,很会人会陷入Java和python的纠结中,从以后的发展来看,这两个编程语言肯定是要通吃的,但...