09 2020 档案

摘要:1.FLUSHALL FLUSHALL 清空整个 Redis 服务器的数据(删除所有数据库的所有 key )。 此命令从不失败。 可用版本:>= 1.0.0 时间复杂度:尚未明确 返回值:总是返回 OK 。 redis> DBSIZE # 0 号数据库的 key 数量 (integer) 9 red 阅读全文
posted @ 2020-09-28 11:13 KILLNPE 阅读(92) 评论(0) 推荐(0) 编辑
摘要:1.CONFIG RESETSTAT CONFIG RESETSTAT 重置 INFO 命令中的某些统计数据,包括: Keyspace hits (键空间命中次数) Keyspace misses (键空间不命中次数) Number of commands processed (执行命令的次数) N 阅读全文
posted @ 2020-09-28 11:04 KILLNPE 阅读(126) 评论(0) 推荐(0) 编辑
摘要:1.CLIENT SETNAME CLIENT SETNAME connection-name 为当前连接分配一个名字。 这个名字会显示在 CLIENT LIST 命令的结果中, 用于识别当前正在与服务器进行连接的客户端。 名字使用 Redis 的字符串类型来保存, 最大可以占用 512 MB 。 阅读全文
posted @ 2020-09-28 10:32 KILLNPE 阅读(150) 评论(0) 推荐(0) 编辑
摘要:1.BGSAVE 在后台异步(Asynchronously)保存当前数据库的数据到磁盘。 BGSAVE 命令执行之后立即返回 OK ,然后 Redis fork 出一个新子进程,原来的 Redis 进程(父进程)继续处理客户端请求,而子进程则负责将数据保存到磁盘,然后退出。 客户端可以通过 LAST 阅读全文
posted @ 2020-09-27 16:26 KILLNPE 阅读(124) 评论(0) 推荐(0) 编辑
摘要:Redis 服务器命令主要是用于管理 redis 服务。 实例 以下实例演示了如何获取 redis 服务器的统计信息: 127.0.0.1:6379> info # Server redis_version:5.0.9 redis_git_sha1:9414ab9b redis_git_dirty: 阅读全文
posted @ 2020-09-27 14:27 KILLNPE 阅读(88) 评论(0) 推荐(0) 编辑
摘要:1.AUTH AUTH password 通过设置配置文件中 requirepass 项的值(使用命令 CONFIG SET requirepass password ),可以使用密码来保护 Redis 服务器。 如果开启了密码保护的话,在每次连接 Redis 服务器之后,就要使用 AUTH 命令解 阅读全文
posted @ 2020-09-27 14:08 KILLNPE 阅读(209) 评论(0) 推荐(0) 编辑
摘要:Redis 连接命令主要是用于连接 redis 服务。 实例 以下实例演示了客户端如何通过密码验证连接到 redis 服务,并检测服务是否在运行: redis 127.0.0.1:6379> AUTH "password" OK redis 127.0.0.1:6379> PING PONG Red 阅读全文
posted @ 2020-09-27 13:53 KILLNPE 阅读(123) 评论(0) 推荐(0) 编辑
摘要:1.DISCARD DISCARD 取消事务,放弃执行事务块内的所有命令。 如果正在使用 WATCH 命令监视某个(或某些) key,那么取消所有监视,等同于执行命令 UNWATCH 。 可用版本:>= 2.0.0 时间复杂度:O(1)。 返回值:总是返回 OK 。 127.0.0.1:6379> 阅读全文
posted @ 2020-09-26 09:21 KILLNPE 阅读(120) 评论(0) 推荐(0) 编辑
摘要:Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证: 批量操作在发送 EXEC 命令前被放入队列缓存。 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。 在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。 一个事务从开始到执行会经 阅读全文
posted @ 2020-09-26 08:53 KILLNPE 阅读(79) 评论(0) 推荐(0) 编辑
摘要:1.PUNSUBSCRIBE PUNSUBSCRIBE [pattern [pattern ...]] 指示客户端退订所有给定模式。 如果没有模式被指定,也即是,一个无参数的 PUNSUBSCRIBE 调用被执行,那么客户端使用 PSUBSCRIBE 命令订阅的所有模式都会被退订。在这种情况下,命令 阅读全文
posted @ 2020-09-26 08:45 KILLNPE 阅读(167) 评论(0) 推荐(0) 编辑
摘要:1.PSUBSCRIBE PSUBSCRIBE pattern [pattern ...] 订阅一个或多个符合给定模式的频道。 每个模式以 * 作为匹配符,比如 it* 匹配所有以 it 开头的频道( it.news 、 it.blog 、 it.tweets 等等), news.* 匹配所有以 n 阅读全文
posted @ 2020-09-23 14:03 KILLNPE 阅读(300) 评论(0) 推荐(0) 编辑
摘要:Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 Redis 客户端可以订阅任意数量的频道。 下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系: 阅读全文
posted @ 2020-09-23 13:48 KILLNPE 阅读(134) 评论(0) 推荐(0) 编辑
摘要:1.ZREVRANGE ZREVRANGE key start stop [WITHSCORES] 返回有序集 key 中,指定区间内的成员。 其中成员的位置按 score 值递减(从大到小)来排列。 具有相同 score 值的成员按字典序的逆序(reverse lexicographical or 阅读全文
posted @ 2020-09-23 10:17 KILLNPE 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1.ZRANGEBYSCORE ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增 阅读全文
posted @ 2020-09-23 09:50 KILLNPE 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1.ZADD ZADD key score member [[score member] [score member] ...] 将一个或多个 member 元素及其 score 值加入到有序集 key 当中。 如果某个 member 已经是有序集的成员,那么更新这个 member 的 score  阅读全文
posted @ 2020-09-23 09:25 KILLNPE 阅读(198) 评论(0) 推荐(0) 编辑
摘要:Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。 不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。 有序集合的成员是唯一的,但分数(score)却可以重复。 集合是通过哈希表实现的,所以添加,删除,查找的 阅读全文
posted @ 2020-09-22 13:55 KILLNPE 阅读(143) 评论(0) 推荐(0) 编辑
摘要:1.SRANDMEMBER SRANDMEMBER key [count] 如果命令执行时,只提供了 key 参数,那么返回集合中的一个随机元素。 从 Redis 2.6 版本开始, SRANDMEMBER 命令接受可选的 count 参数: 如果 count 为正数,且小于集合基数,那么命令返回一 阅读全文
posted @ 2020-09-22 13:51 KILLNPE 阅读(164) 评论(0) 推荐(0) 编辑
摘要:1.SINTERSTORE SINTERSTORE destination key [key ...] 这个命令类似于 SINTER 命令,但它将结果保存到 destination 集合,而不是简单地返回结果集。 如果 destination 集合已经存在,则将其覆盖。 destination 可以 阅读全文
posted @ 2020-09-22 13:43 KILLNPE 阅读(221) 评论(0) 推荐(0) 编辑
摘要:1.SADD SADD key member [member ...] 将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略。 假如 key 不存在,则创建一个只包含 member 元素作成员的集合。 当 key 不是集合类型时,返回一个错误。 在R 阅读全文
posted @ 2020-09-22 13:23 KILLNPE 阅读(171) 评论(0) 推荐(0) 编辑
摘要:Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。 实例 阅读全文
posted @ 2020-09-22 10:19 KILLNPE 阅读(117) 评论(0) 推荐(0) 编辑
摘要:1.LSET LSET key index value 将列表 key 下标为 index 的元素的值设置为 value 。 当 index 参数超出范围,或对一个空列表( key 不存在)进行 LSET 时,返回一个错误。 关于列表下标的更多信息,请参考 LINDEX 命令。 可用版本:>= 1. 阅读全文
posted @ 2020-09-22 10:04 KILLNPE 阅读(169) 评论(0) 推荐(0) 编辑
摘要:1.LPOP LPOP key 移除并返回列表 key 的头元素。 可用版本:>= 1.0.0 时间复杂度:O(1) 返回值: 列表的头元素。 当 key 不存在时,返回 nil 。 127.0.0.1:6379> flushdb OK 127.0.0.1:6379> rpush ages 00 1 阅读全文
posted @ 2020-09-22 09:47 KILLNPE 阅读(161) 评论(0) 推荐(0) 编辑
摘要:1.BLPOP BLPOP key [key ...] timeout BLPOP 是列表的阻塞式(blocking)弹出原语。 它是 LPOP 命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被 BLPOP 命令阻塞,直到等待超时或发现可弹出元素为止。 当给定多个 key 参数时,按 阅读全文
posted @ 2020-09-22 09:17 KILLNPE 阅读(215) 评论(0) 推荐(0) 编辑
摘要:Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边) 一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。 127.0.0.1:6379> lpush names zhangsan lisi wan 阅读全文
posted @ 2020-09-21 15:38 KILLNPE 阅读(114) 评论(0) 推荐(0) 编辑
摘要:1.HKEYS HKEYS key 返回哈希表 key 中的所有域。 可用版本:>= 2.0.0 时间复杂度:O(N), N 为哈希表的大小。 返回值: 一个包含哈希表中所有域的表。 当 key 不存在时,返回一个空表。 # 哈希表非空 redis> HMSET website google www 阅读全文
posted @ 2020-09-21 15:30 KILLNPE 阅读(218) 评论(0) 推荐(0) 编辑
摘要:1.HDEL HDEL key field [field ...] 删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。 在Redis2.4以下的版本里, HDEL 每次只能删除单个域,如果你需要在一个原子时间内删除多个域,请将命令包含在 MULTI / EXEC 块内。 可用版本:>= 阅读全文
posted @ 2020-09-21 15:20 KILLNPE 阅读(190) 评论(0) 推荐(0) 编辑
摘要:Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。 Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)。 实例 127.0.0.1:6379> hmset user name zhangsa 阅读全文
posted @ 2020-09-21 14:42 KILLNPE 阅读(103) 评论(0) 推荐(0) 编辑
摘要:1.MGET MGET key [key ...] 返回所有(一个或多个)给定 key 的值。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。因此,该命令永不失败。 可用版本:>= 1.0.0 时间复杂度:O(N) , N 为给定 key 的数量。 返回值 阅读全文
posted @ 2020-09-21 14:15 KILLNPE 阅读(182) 评论(0) 推荐(0) 编辑
摘要:1.APPEND APPEND key value 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。 如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。 可用版本: 阅读全文
posted @ 2020-09-21 11:11 KILLNPE 阅读(178) 评论(0) 推荐(0) 编辑
摘要:Redis 字符串数据类型的相关命令用于管理 redis 字符串值,基本语法如下: 语法 redis 127.0.0.1:6379> COMMAND KEY_NAME 实例 localhost:6379> set name redis666 OK localhost:6379> get name " 阅读全文
posted @ 2020-09-21 10:18 KILLNPE 阅读(80) 评论(0) 推荐(0) 编辑
摘要:1.TTL TTL key 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。 可用版本:>= 1.0.0 时间复杂度:O(1) 返回值: 当 key 不存在时,返回 -2 。 当 key 存在但没有设置剩余生存时间时,返回 -1 。 否则,以秒为单位,返回 key 阅读全文
posted @ 2020-09-21 10:15 KILLNPE 阅读(164) 评论(0) 推荐(0) 编辑
摘要:1.RENAMENX RENAMENX key newkey 当且仅当 newkey 不存在时,将 key 改名为 newkey 。 当 key 不存在时,返回一个错误。 可用版本:>= 1.0.0 时间复杂度:O(1) 返回值: 修改成功时,返回 1 。 如果 newkey 已经存在,返回 0 。 阅读全文
posted @ 2020-09-21 09:41 KILLNPE 阅读(280) 评论(0) 推荐(0) 编辑
摘要:1.MOVE MOVE key db 将当前数据库的 key 移动到给定的数据库 db 当中。 如果当前数据库(源数据库)和给定数据库(目标数据库)有相同名字的给定 key ,或者 key 不存在于当前数据库,那么 MOVE 没有任何效果。 因此,也可以利用这一特性,将 MOVE 当作锁(locki 阅读全文
posted @ 2020-09-19 10:35 KILLNPE 阅读(189) 评论(0) 推荐(0) 编辑
摘要:1.DEL DEL key [key ...] 删除给定的一个或多个 key 。不存在的 key 会被忽略。 可用版本:>= 1.0.0 时间复杂度: O(N), N 为被删除的 key 的数量。 删除单个字符串类型的 key ,时间复杂度为O(1)。 删除单个列表、集合、有序集合或哈希表类型的 k 阅读全文
posted @ 2020-09-18 15:24 KILLNPE 阅读(447) 评论(0) 推荐(0) 编辑
摘要:Redis 键命令用于管理 redis 的键。 语法 Redis 键命令的基本语法如下: redis 127.0.0.1:6379> COMMAND KEY_NAME 实例 127.0.0.1:6379> set name redis666 // 设置key name OK 127.0.0.1:63 阅读全文
posted @ 2020-09-18 11:02 KILLNPE 阅读(204) 评论(0) 推荐(0) 编辑
摘要:Redis 命令用于在 redis 服务上执行操作。 要在 redis 服务上执行命令需要一个 redis 客户端。Redis 客户端在我们之前下载的的 redis 的安装包中。 语法 Redis 客户端的基本语法为: $ redis-cli 实例 以下实例讲解了如何启动 redis 客户端: 启动 阅读全文
posted @ 2020-09-18 10:39 KILLNPE 阅读(136) 评论(0) 推荐(0) 编辑
摘要:Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 注意:以下实例中可能会用到同一个key名称, 例如key为name, 实际如果设置key时重复可能会报错或者覆盖, 每种类型实例结束后key为name 阅读全文
posted @ 2020-09-18 10:29 KILLNPE 阅读(161) 评论(0) 推荐(0) 编辑
摘要:Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf(Windows 名为 redis.windows.conf)。上一章中启动命令就是"redis-server.exe redis.window.conf", 指定的此配置文件 可以打开此配置文件查看里面的配置信息, 阅读全文
posted @ 2020-09-18 09:29 KILLNPE 阅读(181) 评论(0) 推荐(0) 编辑
摘要:Window 下安装 下载地址:https://github.com/tporadowski/redis/releases。 Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载最新版本 Redis-x64-5.0.9.zip压缩包到 D 盘某个位置,解压内如后 阅读全文
posted @ 2020-09-18 09:05 KILLNPE 阅读(104) 评论(0) 推荐(0) 编辑
摘要:REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 阅读全文
posted @ 2020-09-18 08:40 KILLNPE 阅读(105) 评论(0) 推荐(0) 编辑
摘要:判断对象是否存活的算法包括: 引用计数算法 可达性分析算法 之前也做过这样一篇文章, 详情看这里 -> JVM垃圾回收之垃圾标记算法 阅读全文
posted @ 2020-09-15 09:54 KILLNPE 阅读(288) 评论(0) 推荐(0) 编辑
摘要:MySQL查询字段区不区分大小写? MySQL innodb的事务与日志的实现方式? MySQL查询字段区不区分大小写? 答案是不区分 如何解决需要区分英文大小写的场景 例如登录用户为admin,此时填写ADMIN也能登录,如果用户名需要区分大小写,你的做法是什么? 解决方案一 MySQL默认的字符 阅读全文
posted @ 2020-09-15 09:47 KILLNPE 阅读(222) 评论(0) 推荐(0) 编辑
摘要:单例模式介绍: 单例模式(Singleton),是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个全局对象,这样有利于我们协调系统整体的行为。 比如在某个服务器程序中,该服务器的配置信息存放在一个文件中,这些配置数据由一个单例对象统一读取 阅读全文
posted @ 2020-09-15 09:22 KILLNPE 阅读(154) 评论(0) 推荐(0) 编辑
摘要:同步, 异步, 阻塞 和 非阻塞 不能简单的从字面理解, 之前看过一个很形象的例子来说明同步异步阻塞非阻塞。 场景: 小明使用 chrome 下载一个软件。 1. 同步阻塞 小明使用 没有提醒功能的chrome 下载一个软件。小明 一直坐在电脑面前什么事也不做, 等待软件下载完成。 阻塞:小明(调用 阅读全文
posted @ 2020-09-15 09:13 KILLNPE 阅读(166) 评论(0) 推荐(0) 编辑
摘要:目录 一、消息队列的特性二、为什么需要消息队列?三、使用消息队列有什么好处?四、为什么需要分布式?五、分布式环境下需要解决哪些问题?六、如何实现?七、常见消息队列对比和选型 一、消息队列的特性 业务无关,一个具有普适性质的消息队列组件不需要考虑上层的业务模型,只做好消息的分发就可以了,上层业务的不同 阅读全文
posted @ 2020-09-14 16:38 KILLNPE 阅读(188) 评论(0) 推荐(0) 编辑
摘要:下面分别对Comparable 和 Comparator做具体介绍并总结。 Comparable Comparable可以认为是一个内比较器,实现了Comparable接口的类有一个特点,就是这些类是可以和自己比较的,至于具体和另一个实现了Comparable接口的类如何比较,则依赖compareT 阅读全文
posted @ 2020-09-14 14:52 KILLNPE 阅读(245) 评论(0) 推荐(0) 编辑
摘要:Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象的时候,保证对象的完整性和可传递性。序列化是把对象转换成有序字节流,以便在网络上传输或者保存在本地文 阅读全文
posted @ 2020-09-14 10:42 KILLNPE 阅读(152) 评论(0) 推荐(0) 编辑
摘要:ArrayList 和 LinkedList 是 Java 集合框架中用来存储对象引用列表的两个类。ArrayList 和 LinkedList 都实现 List 接口。先对List做一个简单的了解: 列表(list)是元素的有序集合,也称为序列。它提供了基于元素位置的操作,有助于快速访问、添加和删 阅读全文
posted @ 2020-09-14 10:08 KILLNPE 阅读(156) 评论(0) 推荐(0) 编辑
摘要:HashMap冲突解决方法比较考验一个开发者解决问题的能力。 下文给出HashMap冲突的解决方法以及原理分析,无论是在面试问答或者实际使用中,应该都会有所帮助 在Java编程语言中,最基本的结构就是两种,一种是数组,一种是模拟指针(引用),所有的数据结构都可以用这两个基本结构构造,HashMap也 阅读全文
posted @ 2020-09-14 09:08 KILLNPE 阅读(660) 评论(0) 推荐(0) 编辑
摘要:创建线程有几种不同的方式?你喜欢哪一种?为什么? 有四种方式可以用来创建线程: 继承Thread类 实现Runnable接口 实现Callable接口 使用Executor框架来创建线程池 实现Runnable接口这种方式更受欢迎,因为这不需要继承Thread类。在应用设计中已经继承了别的对象的情况 阅读全文
posted @ 2020-09-14 08:47 KILLNPE 阅读(117) 评论(0) 推荐(0) 编辑
摘要:两者的定义 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和 阅读全文
posted @ 2020-09-10 16:57 KILLNPE 阅读(145) 评论(0) 推荐(0) 编辑
摘要:在日常开发中,我们使用 Redis 存储 key 时通常会设置一个过期时间,但是 Redis 是怎么删除过期的 key,而且 Redis 是单线程的,删除 key 会不会造成阻塞。要搞清楚这些,就要了解 Redis 的过期策略和内存淘汰机制。 Redis采用的是定期删除 + 懒惰删除策略。 定期删除 阅读全文
posted @ 2020-09-10 15:22 KILLNPE 阅读(244) 评论(0) 推荐(0) 编辑
摘要:上一篇关于介绍Object类下的几种方法时面试题时,提到equals()和hashCode()方法可能引出关于“hashCode() 和 equals() 之间的关系?”的面试题,本篇来解析一下这道基础面试题。 先祭一张图,可以思考一下为什么? 介绍 equals() 的作用是用来判断两个对象是否相 阅读全文
posted @ 2020-09-10 15:00 KILLNPE 阅读(153) 评论(0) 推荐(0) 编辑
摘要:Object有几种方法呢? Java语言是一种单继承结构语言,Java中所有的类都有一个共同的祖先。这个祖先就是Object类。 如果一个类没有用extends明确指出继承于某个类,那么它默认继承Object类。 Object的方法我们在平时基本都会用到,但如果没有准备被忽然这么一问,还是有点懵圈的 阅读全文
posted @ 2020-09-10 14:19 KILLNPE 阅读(113) 评论(0) 推荐(0) 编辑
摘要:示例中的SingleUtil类是个空类, 只是为了模拟创建单例的存在而已.... 懒汉式 package demo.java.jiangkd.singleton.example; /** * 懒汉式<br> * 懒汉模式中单例是在需要的时候才去创建的,如果单例已经创建,再次调用获取接口将不会重新创建 阅读全文
posted @ 2020-09-10 14:09 KILLNPE 阅读(155) 评论(0) 推荐(0) 编辑
摘要:问:如何决定使用 HashMap 还是 TreeMap 或者区别? 介绍 TreeMap<K,V>的Key值是要求实现java.lang.Comparable,所以迭代的时候TreeMap默认是按照Key值升序排序的;TreeMap的实现是基于红黑树结构。适用于按自然顺序或自定义顺序遍历键(key) 阅读全文
posted @ 2020-09-10 11:12 KILLNPE 阅读(134) 评论(0) 推荐(0) 编辑
摘要:简单说一下: 1、实例化一个Bean--也就是我们常说的new; 2、按照Spring上下文对实例化的Bean进行配置--也就是IOC注入; 3、如果这个Bean已经实现了BeanNameAware接口,会调用它实现的setBeanName(String)方法,此处传递的就是Spring配置文件中B 阅读全文
posted @ 2020-09-10 09:13 KILLNPE 阅读(118) 评论(0) 推荐(0) 编辑
摘要:简单介绍 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。Spring使你能够编写更干净、更可管理、并且更易于测试的代码。 Spring MVC是Spring的一个模块,一个web框架。通过Dispatcher Servlet, ModelAndView 和 View R 阅读全文
posted @ 2020-09-10 08:57 KILLNPE 阅读(121) 评论(0) 推荐(0) 编辑
摘要:聚合操作主要用于处理数据并返回计算结果。聚合操作将来自多个文档的值组合在一起,按条件分组后,再进行一系列操作(如求和、平均值、最大值、最小值)以返回单个结果。 MongoDB 提供了三种执行聚合的方法:聚合管道、map-reduce 和单一目标聚合方法,这里只介绍前两种方法。 聚合管道方法 Mong 阅读全文
posted @ 2020-09-03 11:21 KILLNPE 阅读(340) 评论(0) 推荐(0) 编辑
摘要:索引的作用是为了提升查询效率,在查询操作中,如果没有索引,MongoDB 会扫描集合中的每个文档,以选择与查询语句匹配的文档。如果查询条件带有索引,MongoDB 将扫描索引, 通过索引确定要查询的部分文档,而非直接对全部文档进行扫描。 索引简介 索引可以提升文档的查询速度,但建立索引的过程需要使用 阅读全文
posted @ 2020-09-03 11:04 KILLNPE 阅读(264) 评论(0) 推荐(0) 编辑
摘要:$type操作符是基于BSON类型来检索集合中匹配的数据类型,并返回结果。 MongoDB 中可以使用的类型如下表所示: 类型数字备注 Double 1 String 2 Object 3 Array 4 Binary data 5 Undefined 6 已废弃。 Object id 7 Bool 阅读全文
posted @ 2020-09-03 10:38 KILLNPE 阅读(192) 评论(0) 推荐(0) 编辑
摘要:在关系型数据库中,可以实现基于表的各种各样的查询,以及通过投影来返回指定的列,相应的查询功能也可以在 MongoDB 中实现。同时由于 MongoDB 支持嵌套文档和数组,MongoDB 也可以实现基于嵌套文档和数组的查询。 MongoDB 查询文档使用 find() 方法。find() 方法以非结 阅读全文
posted @ 2020-09-03 10:34 KILLNPE 阅读(292) 评论(0) 推荐(0) 编辑
摘要:在前面我们已经学习了MongoDB中如何为集合添加数据和更新数据。在本章节中我们将继续学习MongoDB集合的删除。 MongoDB 使用 remove() 和 delete() 方法来删除集合中的文档。 MongoDB remove()函数是用来移除集合中的数据。在执行remove()函数前先执行 阅读全文
posted @ 2020-09-03 09:51 KILLNPE 阅读(494) 评论(0) 推荐(0) 编辑
摘要:MongoDB 使用 update() 和 save() 方法来更新集合中的文档。接下来让我们详细来看下两个函数的应用及其区别。 update() 方法 update() 方法用于更新已存在的文档。语法格式如下: db.collection.update( <query>, <update>, { 阅读全文
posted @ 2020-09-03 09:25 KILLNPE 阅读(254) 评论(0) 推荐(0) 编辑
摘要:这里将向大家介绍如何将数据插入到 MongoDB 的集合中。 文档的数据结构和 JSON 基本一样。 所有存储在集合中的数据都是 BSON 格式。 BSON 是一种类似 JSON 的二进制形式的存储格式,是 Binary JSON 的简称。 文档是 MongoDB 中存储的基本单元,是一组有序的键值 阅读全文
posted @ 2020-09-02 16:17 KILLNPE 阅读(639) 评论(0) 推荐(0) 编辑
摘要:删除集合操作 MongoDB 中使用 drop() 方法来删除集合。 语法格式: db.collection.drop() 如果成功删除选定集合,则 drop() 方法返回 true,否则返回 false。 > use myDB switched to db myDB > > show collec 阅读全文
posted @ 2020-09-02 16:15 KILLNPE 阅读(480) 评论(0) 推荐(0) 编辑
摘要:MongoDB 将文档存储在集合中。集合类似于关系数据库中的表。如果集合不存在,则 MongoDB 会在第一次存储该集合数据时创建该集合。 MongoDB 集合的命名规则 MongoDB 的集合就相当于 MySQL 的一个表 table,MySQL 列出的所有表都可以使用 show tables,M 阅读全文
posted @ 2020-09-02 16:13 KILLNPE 阅读(2016) 评论(0) 推荐(0) 编辑
摘要:MongoDB 将 BSON 文档(即数据记录)存储在集合中,数据库包含文档集合。在 MongoDB 里面存在数据库的概念,但没有模式,保存数据的结构是 BSON 结构,只不过在进行一些数据处理的时候才会使用 MongoDB 自己的操作。 MongoDB 自带了一个功能强大的 JavaScript  阅读全文
posted @ 2020-09-02 16:11 KILLNPE 阅读(750) 评论(0) 推荐(0) 编辑
摘要:MongoDB提供了可用于32位和64位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB预编译二进制包下载地址: https://www.mongodb.com/try/download/community 本节以 Windows 为例,具体安装步骤可参考官网手册。 1) 本 阅读全文
posted @ 2020-09-02 16:09 KILLNPE 阅读(232) 评论(0) 推荐(0) 编辑
摘要:MongoDB 存储的数据格式与 JSON 十分类似,MongoDB 所采用的数据格式被称为 BSON,是一种基于 JSON 的二进制序列化格式,用于 MongoDB 存储文档并进行远程过程调用。 JSON 是一种网络常用的数据格式,具有自描述性。JSON 的数据表示方式易于解析,但支持的数据类型有 阅读全文
posted @ 2020-09-02 16:08 KILLNPE 阅读(220) 评论(0) 推荐(0) 编辑
摘要:MongoDB 文档数据库的存储结构分为四个层次,从小到大依次是:键值对、文档(document)、集合(collection)、数据库(database)。 下图描述了 MongoDB 的存储与关系型数库 存储的对应关系,可以看出,MongoDB中的文档、集合、数据库对应于关系数据库中的行数据、表 阅读全文
posted @ 2020-09-02 16:06 KILLNPE 阅读(653) 评论(0) 推荐(0) 编辑
摘要:传统的文档数据库(Document Storage)概念的提岀要追溯到 1989 年,Lotus 提出的 Notes 产品被称为文档数据库,这种文档数据库常用于管理文档,如 Word、建立工作流任务等。 文档数据库区别于传统的其他数据库,它可用来管理文档,尤其擅长处理各种非结构化的文档数据。在传统的 阅读全文
posted @ 2020-09-02 16:05 KILLNPE 阅读(184) 评论(0) 推荐(0) 编辑
摘要:什么是MongoDB ? MongoDB 是一个开源文档数据库,提供高性能、高可用性和自动扩展的功能。MongoDB 是用 C++ 语言编写的非关系型数据库。 在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 与 HBase  阅读全文
posted @ 2020-09-02 16:04 KILLNPE 阅读(169) 评论(0) 推荐(0) 编辑
摘要:NoSQL 简介 NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。 在现代的计算系统上每天网络上都会产生庞大的数据量。 这些数据有很大一部分是由关系数据库管理系统(RDBMS)来处理。 1970年 E.F.Codd's提出的关系模型的论文 "A relational 阅读全文
posted @ 2020-09-02 16:03 KILLNPE 阅读(117) 评论(0) 推荐(0) 编辑
摘要:MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较 阅读全文
posted @ 2020-09-02 09:38 KILLNPE 阅读(114) 评论(0) 推荐(0) 编辑
摘要:转载自: 公众号"Python之禅" 正向代理 A同学在大众创业、万众创新的大时代背景下开启他的创业之路,目前他遇到的最大的一个问题就是启动资金,于是他决定去找马云爸爸借钱,可想而知,最后碰一鼻子灰回来了,情急之下,他想到一个办法,找关系开后门,经过一番消息打探,原来A同学的大学老师王老师是马云的同 阅读全文
posted @ 2020-09-01 14:15 KILLNPE 阅读(156) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示