
常识
转身雪人
随心所欲,认真生活
展开
-
【正则小记】如何匹配一个或者多个space
\s 表示空白字符。包括,空格,制表符等 \s+ 可匹配至少一个Space。 \s* 匹配0到多个Space“ ” 等同于\s 用法以此类推原创 2018-02-27 12:09:04 · 2926 阅读 · 0 评论 -
【数据库基础】enum的使用
偶然发现的小技巧。。就是 我想让表里的某个字段,非0即1。类似状态一样,不存在第三种情况。那么这样如何定义该字段呢? 字段名 enum('0','1');看,改完以后Type那里是 enum('0','1')我们试着插入一条数据2,看看会出现什么情况(报错,或是?) 结果插入了状态1。结论使用这种enum不能够起到严格的校验,但可以...原创 2018-02-14 18:01:59 · 8449 阅读 · 0 评论 -
【数据库基础】MySQL索引初识
简介弊端种类普通索引唯一索引全文索引 索引的删除查看索引索引失效like查询字段计算NOT IN操作字符串忘加引号常见问题主键和唯一索引简介索引(INDEX或KEY)是我们引用的为了高效查询的一种方式,在需要作为where条件的字段上加索引,避免了从头开始全表扫描和过分的磁盘IO。可以将索引理解为目录(跳跃式的查找),底层...原创 2018-02-16 16:13:55 · 1172 阅读 · 1 评论 -
非对称加密基本原理
如果只是单方面采用非对称性加密算法,其实有两种方式。这里我们设定A和B两方。 A和B都拥有自己的一对公钥私钥以及对方发送给自己的公钥。第一种是签名: A使用自己的私钥加密,B接收到后用A的公钥解密。用于让所有公钥所有者验证私钥所有者的身份并且用来防止私钥所有者发布的内容被篡改。但是不用来保证内容不被他人获得。 第二种是加密: A用对方B的公钥加密,B收到A发过来的密文后用...原创 2018-03-17 00:52:24 · 2907 阅读 · 0 评论 -
【数据库基础】MySQL for update初识
在面试中被问到过mysql的悲观锁乐观锁。当时不懂,看了一篇博客之后若有所思 http://blog.youkuaiyun.com/xz0125pr/article/details/51698507#reply然后自己在mac上用两个terminal测试了一把。完全原创几种情况吧。前提表引擎为InnoDB。 MySQL select…for update的Row Lock与T...原创 2018-03-05 13:04:51 · 239 阅读 · 0 评论 -
【JAVA】List在进行remove操作时的坑
如果已有一个List, 你想对其遍历然后在过程中对某些元素进行删除操作的话,你会怎么做?按下标直接遍历List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(2); list.add(3); list.add(4);...原创 2018-08-15 16:29:16 · 769 阅读 · 3 评论 -
【PYTHON】装饰器(Decorator)介绍
- - 看了两三篇博客。 其中有一篇虽然 * 错字连篇 * 代码错误 * 逻辑混乱但是将decorator**循序渐进**实现的思路值得记录一下。 故在此回顾一下什么是decorator。为什么要使用装饰器并不希望修改原有函数的代码并不希望修改调用原有函数的方式希望在满足1,2的前提下给原函数增加新的功能有点像java的aop的感觉。我们逐步看一下如何...原创 2018-09-11 19:59:15 · 402 阅读 · 0 评论 -
【无聊】JAVA调用同名同路径的工程本地类与jar中的类问题
如果jar中的A方法调用了jar中的B,最后调用了jar中的C,如果我把B在工程中重写,jar中的A能调用到工程中的B,最后再调回jar的C吗以上为友人的疑问。实践是可以的。本地jar中的AAA调用了本地的BBB再调用了jar中的CCC。 ...原创 2018-09-10 15:20:33 · 2205 阅读 · 0 评论 -
【缓存】缓存穿透/缓存击穿/缓存雪崩
文章目录缓存穿透缓存击穿缓存雪崩缓存穿透缓存击穿缓存雪崩原创 2019-03-28 00:22:19 · 1096 阅读 · 3 评论 -
【疑惑】关于java Double类型的一点疑惑
记不得当时这段代码是怎么来的了public static void main(String[] args) { int a1 = 1; double a2 = 1.0; System.out.println(a1==a2); double a3 = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0原创 2018-01-19 12:34:45 · 218 阅读 · 0 评论 -
Collection和Collections分别是什么
这个应该面试常问,也相对很简单。这里就不做过深的阐述了。CollectionCollectionsCollection它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。 Collection ├List │├LinkedLis原创 2018-01-27 16:12:38 · 2636 阅读 · 0 评论 -
如何重写Object的hashCode和equals方法
暂原创 2018-01-27 15:02:54 · 203 阅读 · 0 评论 -
【JAVA基础】本地持久化的非数据库方式:properties
“The Properties class represents a persistent set of properties. The Properties can be saved to a stream or loaded from a stream. Each key and its corresponding value in the property list is a string.原创 2016-11-08 15:47:49 · 3263 阅读 · 0 评论 -
【JAVA基础】浅谈JSON这种数据格式
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。 形如这样的数据格式↓//↓ 不包含json对象数组{ "SendTransCode":"MELEGenerateRand", "ChannelHeadRequest":{ "ChannelId":"1原创 2016-11-10 15:58:06 · 361 阅读 · 1 评论 -
【eclipse】实用小技巧,不定时更新
eclipse常用技巧eclipse常用技巧查看当前类被哪些类调用 选中类的名字,右击选择references–>project查看当前方法被哪些方法调用 选中方法的名字,右击选择open call hierarchy原创 2016-12-12 14:35:43 · 349 阅读 · 0 评论 -
【JAVA基础】IdentityHashMap初步了解
简单说IdentityHashMap与常用的HashMap的区别是:前者比较key时是“引用相等”而后者是“对象相等”,即对于k1和k2,当k1==k2时,IdentityHashMap认为两个key相等,而HashMap只有在k1.equals(k2) == true 时才会认为两个key相等。IdentityHashMap有其特殊用途,比如序列化或者深度复制。或者记录对象代理。举个例子,jvm中原创 2016-12-30 11:53:41 · 378 阅读 · 0 评论 -
【JAVA基础】HashMap,TreeMap,LinkedHashMap的一个小区别
简而言之,最最最简而言之。当我们把元素一个一个put进map后,再遍历。HashMap是乱序的TreeMap会按照一定的规则排序(规则可以传入构造)LinkedHashMap 会保持你注入map的顺序import java.util.HashMap;import java.util.Iterator;import java.util.LinkedHashMap;import java.原创 2016-12-30 14:19:30 · 266 阅读 · 0 评论 -
【杂】长连接短连接,各种“工”
长连接与短连接所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持。 短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,一般银行都使用短连接。 比如http的,只是连接、请求、关闭,过程时间较短,服务器若是一段时间内没有收到请求即可关闭连接。 其实长连接是原创 2017-02-21 17:12:45 · 391 阅读 · 0 评论 -
【JAVA基础】StringBuffer和StringBuilder
StringBuilder是在Java 5.0之后发布的。 StringBuffer已经满足了可变字符串操作的基础上为什么还要再来个StringBuilder呢?这里类比一下HashTable和HashMap。 如果你读过《Think in Java》,而且对里面描述HashTable和HashMap区别的那部分章节比较熟悉的话,你一定也明白了原因所在。对,就是支持线程同步保证线程安全而导致原创 2017-03-02 15:20:35 · 195 阅读 · 0 评论 -
【JAVA基础】数组中容易搞错的知识
你以为你懂数组了?别急,先看看下面的代码。 int [] A = {1,2,3,4,5,7}; int [] B = A; B[0] = 0; System.out.println(A[0]);你觉得会输出什么? 1么? 输出↓0 为什么? 我们先不管 看看下面的代码会输出什么。 int [] A = {1,2,3,原创 2017-03-08 10:49:53 · 245 阅读 · 0 评论 -
浅谈String/StringBuffer/StringBuilder
面向面试,所以力求言简意赅。String是final的东西,拼接的时候会不停的new对象然后重新赋值,故在操作字符串的时候不建议使用。StringBuffer 在StringBuilder之前就有的,线程安全,适用于多线程情况。StringBuilder 速度快于StringBuffer,但并没有synchronized线程不安全。 jdk1.5以后javac默认将由“+”拼接的字原创 2018-01-23 18:03:57 · 287 阅读 · 0 评论 -
【读后感】hashcode和equals方法。 以及捎带提提String使用equals方法和==分别比较的是什么?
某次面试的时候面试官提到 如果将一个对象作为HashMap的key值,那么这个对象要重写哪些方法。正好结合HashMap来理解一下Object对象的hashcode和equals方法之前提到HashMap,如果是插入或者获取一个key的值,会首先拿这个key做一次hash得到一个下标然后再根据这个下标找到头结点进行equals如果不对继续next直到链表的尾端。 所以,可原创 2018-01-21 13:20:48 · 247 阅读 · 0 评论 -
mysql的水平拆分和垂直拆分
原本搜一下该方面的内容,结果发现了全网一大半都是一个字不差的复制粘贴。。呵呵,甚至概念模糊不清的地方都一并抄下来了写个转载不丢人,真的。 由于此篇文章在细节上不能使我满意,所以找了另一篇原文链接: mysql的水平拆分和垂直拆分不过这篇文章也有部分不赞同的地方,暂时不做展开。。水平分割:例:QQ的登录表。假设QQ的用户有100亿,如果只有一张表,每个用户登录的时候数据库都要...转载 2019-06-13 17:30:06 · 723 阅读 · 0 评论