摘要: 今天看去年年中写的代码,留意到一个关键时刻能提高效率的api:on duplicate key update; 语法: INSERT INTO INSERT INTO g_iot_user_building ()VALUES() ON DUPLICATE KEY UPDATEa='a',b='b'; 阅读全文
posted @ 2017-05-22 19:14 it馅儿包子 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 虽说公司一直在使用redis,但一直没有系统的学习redis相关知识,故此,趁有空系统的学习了一下: 以下为学习笔记,以备以后复习: redis 学习笔记: 数据库随着数据量和访问量的压力增大,模式升级如下: 一个数据库 》加缓存 》mysql主从复制 (写出现瓶颈) 》分库分表(1到3000条记录 阅读全文
posted @ 2017-05-20 14:47 it馅儿包子 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 1.首先下载 解压版; 2.将nexus的bin目录路径 写入 环境变量path中; 3.修改 nexus配置文件wrapper.conf 15行 ,指定java.exe文件位置(例如:wrapper.java.command=F:\workTools\java\jdk1.8.0_121\bin\j 阅读全文
posted @ 2017-05-08 23:08 it馅儿包子 阅读(425) 评论(0) 推荐(0) 编辑
摘要: 恢复内容开始 首先抛出一个问题: 为什么hashMap一般使用String作为key? 这是我学习前辈们的博文时看到的一个问题,觉着很有意思,所以记录下来. 原因1: 我当时的第一反应是:为什么不用String,没有哪个类型的元素辨识度比String更好吧? 当然,使用String作为key并不仅仅 阅读全文
posted @ 2017-05-01 20:55 it馅儿包子 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 恢复内容开始 在上文中讲到了putval这个方法,这里继续: 红黑树后面章节会单独拿出来讲,这里先忽略. 这里需要留意标红的两个钩子函数. 源码如下: 这个三个方法的实现是在子类LinkedHashMap中,顾名思义,三个函数的作用分别是:节点访问后,节点插入后,节点移除后 做一些操作. 我们从上面 阅读全文
posted @ 2017-05-01 12:21 it馅儿包子 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 一.初始化: hashMap有四种初始化方式: 以下,对扩容方法resize进行补充描述: 通过观测可以发现,我们使用的是2次幂的扩展(长度扩展为原来的2倍),所以,元素的位置要么是原位置,要么是原位置再移动2次幂的位置。其中 n代表 数组长度(容量)。见下图: 因此,元素再重新计算hash之后,因 阅读全文
posted @ 2017-04-30 16:58 it馅儿包子 阅读(261) 评论(0) 推荐(0) 编辑
摘要: hashMap中,为了使元素在数组中尽量均匀的分布,所以使用取模的算法来决定元素的位置.如下: 方法一是我当前使用jdk版本的源码, 方法二是在网上查到的低版本的源码, 首先确认:当length总是2的n次方时, h & (length - 1) 等价于 hash对length取模 ,但是&比%具有 阅读全文
posted @ 2017-04-27 22:21 it馅儿包子 阅读(475) 评论(0) 推荐(0) 编辑
摘要: HashMap 继承自 接口Map. 这个实现类提供了接口Map所有的方法,并且允许空的value和空的key.HashMap这个类 和类HashTable 类似,除了HashMap是异步的并且允许null值.HashMap不保证map中元素的顺序,尤其,它不保证元素的顺序始终保持不变. HashM 阅读全文
posted @ 2017-04-25 08:25 it馅儿包子 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 入门容易,精通难啊! 阅读全文
posted @ 2017-04-05 15:16 it馅儿包子 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 项目中使用到了jwt,用来在分布式项目中替代session; jwt使用起来很简单,以下为我写的一个简单demo: 相关maven: //我暂时只是知道如何使用它,至于其底层原理则还没研究。后面会继续研究. jwt的简单实现原理介绍: jwt分为三部分: 1.header(头部) {"typ": " 阅读全文
posted @ 2017-03-19 22:05 it馅儿包子 阅读(762) 评论(0) 推荐(0) 编辑