- 博客(21)
- 问答 (1)
- 收藏
- 关注
原创 重构心法修炼第二层:在对象之间搬移特性
7.1 搬移函数 当前类中的某个方法,却与其它类配合的更加紧密,那么应该把原类的方法迁移到其它类中。如果用到了当前类中少许字段或者方法,可用方法参数来传递当前字段或者对象。在迁移方法成功后,将当前类的旧函数变成一个单纯的委托函数,或是将旧函数完全删除,即内联函数。 下面的例子中,一种租赁包含一部电影与租期。而计算费用的函数,主要是根据电影的类型,所以才会出现多...
2018-11-30 17:25:16 287
原创 重构心法修炼第一层:重新组织函数
6.1 提炼函数 将小的功能抽取为函数,并将其方法名作为注释,所以,需要在方法名上下一点功夫。 抽取小的功能的优势在于两点:(1)可复用这个小功能(2)便于重写 函数名应该以其意图而命名,而不是以如何去做命名。 函数名如此重要,若想不出一个可以表现其意图的名字,就先别动。 提炼函数遇到的最大的问题是:处理临...
2018-11-29 11:38:15 364
原创 第十四节----Redis学习总结
14.1 Redis到底是什么? 在上一小节中学习了如何在Java中使用Redis。在Java中使用Redis,只要使用Redis提供的JeRis接口即可。拨云见日 原来在Java中使用Redis只需要使用Redis提供的工具类Jedis。Jedis里面封装了就是我们之前在cmd模式下敲的那些基础的命令。所以学好基础的命令对熟练使用Jedis工具有非常大...
2018-11-23 16:21:04 316
原创 第十三节----Java使用Redis
13.1 安装驱动 Redis提供了一个客户端类redis.clients.jedis.Jedis,它能够帮我们在Java中使用Redis缓存。 首先是添加依赖Redis JAR 包。<!-- https://mvnrepository.com/artifact/redis.clients/jedis --><dependency&...
2018-11-23 16:07:26 205
原创 第十二节----备份与恢复
12.1 备份 语法:SAVE 备份的数据库在 redis 安装目录中创建dump.rdb文件。SAVE12.2 恢复 恢复很简单,只需要把dump.rdb文件移动到Redis安装目录下即可。 查看Redis的安装目录:config get dirconfig get dir...
2018-11-18 17:28:09 156
原创 第十一节----连接Redis
11.1 验证密码是否正确 语法:AUTH PASSWORD AUTH “password” #我本机提示我没有设置密码11.2 查看Redis服务器是否开启 语法:PING 连接正常返回PONG,不正常返回错误。PING11.3 打印字符串 语法:ECHO STRECH...
2018-11-18 17:16:26 181
原创 第十节----Redis 脚本
10.1 EVAL命令 Redis 脚本使用 Lua 解释器来执行脚本。执行脚本的常用命令为 EVAL。 语法格式:EVAL script numkeys key [key ...] arg [arg ...] script: 你的lua脚本 numkeys: key的个数 key: redis中各种数据结构的替...
2018-11-18 17:01:49 200
原创 第九节----Redis 事务
8.1 开始事务 一个事务从开始到执行会经历以下三个阶段:开始事务。MULTI 命令入队。EXEC 执行事务。 Redis的事务有几个特点: (1)单个命令原子性,即单个命令要么执行,要么就不执行,不会执行到一半就停止了。 (2)多个命令中,如果某个命令出现异常,不会进行回滚。Redis将跳过这个错误的命令,继续执行下...
2018-11-18 14:40:26 192
原创 第八节----发布与订阅
8.1 订阅 Redis的发布订阅其实就是一种消息交换模式。用设计模式的角度来理解就是“观察者设计模式”。 订阅语法:SUBSCRIBE ChannelNameSUBSCRIBE myChannel #按Ctrl C退出8.2 发布 在开启另外一个客户端,向频道发送消息,然后订阅那个频道的客户端就会收到消息。...
2018-11-18 14:15:11 297
原创 第七节----有序集合(ZSet)
7.1 设值 与Set一样,ZSet也是存储的字符串string,并且不能重复,但是它是有序的。 每个元素都会关联一个double类型的分数,称之为权重Score。 设值语法:ZADD ZSetName KeyNameZADD linkedHashSet 1 valueAZADD linkedHashSet ...
2018-11-17 21:54:30 172
原创 第六节----集合(set)
6.1 设值 Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 可以将Redis中的Set理解为Java中的HashSet集合。 设值语法:SADD SetName KeyDEL mySetSADD mySet valueASADD mySet ...
2018-11-17 21:12:32 265
原创 IntelliJ IDEA 如何设置黑色主题以及Java字体的大小与颜色
1.设置黑色主题File -- Settings -- Appearance&Behavior -- Appearance 面板 -- Theme ,选择Darcula2.设置代码编辑框的字体大小File -- Settings -- Editor -- Font面板 -- Size3.设置Java代码的颜色File -- Settings -- Editor......
2018-11-16 09:58:16 8939
原创 第五节----列表(list)
5.1 设值 LPUSH ListName Value Lpush 命令将一个或多个值插入到列表头部。LPUSH newList valueA valueB5.2 取值 LINDEX ListName Index 队列从做往右,索引从0开始。队头在左边,新插入的元素就是索引为...
2018-11-13 21:46:10 446
原创 第四节----键值对(hash)
4.1 设值与取值 哈希(hash),又名键值对。是一个string类型的key和value的映射集,hash特别适合用于存储对象。 设值语法:HMSET MapName KeyName Value 取值语法:HGET MapName KeyName 、 HMGET myMap keyA keyB HMSET...
2018-11-13 17:52:45 4801
原创 第三节----字符串(String)
3.1 设值与取值 设值命令SET StrKey StrValue 取值命令GET StrKeySET myString myStringValGET myString3.2 设置有时间的Key SETEX KeyName TIME Value 将值 value 关联到 ke...
2018-11-13 16:43:43 316
原创 第二节----Redis keys 常用命令
常用的命令需要记住。不只是string类型用到,hash类型也有key,好像其它所有类型都有Key。2.1 删除KEY DEL KeyName 删除KeySET myKey myValueGET myKeyDEL myKey2.2 检查是否存在指定的KEY EXISTS命令 EXISTS KeyNam...
2018-11-13 16:15:10 284
原创 使用Redis客户端
1 运行Redis Redis安装步骤:https://www.jianshu.com/p/e16d23e358c0 命令行切换到Redis安装目录,输入 redis-server.exe redis.windows.conf Creating Server TCP listening socket 127.0.0.1:6379: bind...
2018-11-12 23:01:16 496
原创 从头开始学MySQL-------性能优化
1.使用LIKE关键字可能触发不了索引 首先执行下面的SQL,准备一些数据。DROP TABLE IF EXISTS t_student;CREATE TABLE `t_student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `age` int(11) DE...
2018-11-06 16:09:08 736
原创 从头开始学MySQL-------存储过程与存储函数(4)
存储过程与存储函数的补充MySQL的存储过程与存储函数有什么区别? 存储函数只能通过return语句返回单个值或者表对象。 存储过程不能用return,但是可以使用多个out参数返回多个值。存储过程如何修改代码? 虽然提供了ALTER PROCEDURE sp_name [存储特性],但是只能修改存储过程的存储特性,不能修改SQL...
2018-11-04 14:12:29 2725 1
原创 从头开始学MySQL-------存储过程与存储函数(3)
10.2.1 调用存储过程 存储过程必须使用CALL语句来调用。如果要调用其它数据库的存储过程,需要指定数据库名称。例如 CALL dbname.spnameDROP TABLE IF EXISTS t_student;CREATE TABLE t_student( id INT(11) PRIMARY KEY AUTO_INCREMENT, name V...
2018-11-03 19:22:55 4310 1
原创 从头开始学MySQL-------存储过程与存储函数(2)
10.1.6 流程控制的使用 (1)IF语句的使用。DROP PROCEDURE IF EXISTS testIf;DELIMITER //CREATE PROCEDURE testIf(OUT result VARCHAR(255))BEGIN DECLARE val VARCHAR(255); SET val = 'a'; IF v...
2018-11-03 19:14:47 4825
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人