摘要:
编写优秀的代码,不能仅仅依靠 一个人的战斗。高质量的代码,依赖于高质量的流水线。作为一个程序员,大家都希望写出优秀的代码。不被 bug 所困扰,可是如何才能编写出没有错误的代码呢? 如何减少错误 先来看一段有问题的代码: 其实这段代码非常简单,它有两个判断语句,如果判断条件成立,那就执行“goto 阅读全文
摘要:
Java 多线程最基本的类就是位于 java.lang 包下的 Thread 类 ,这个类继承 Object 类,实现了 Runnable。 public class Thread extends Object implements Runnable Thread 有优先级的区分,优先级较高的线程优 阅读全文
摘要:
前不久公司需要为用户生成一份报告,报告的模板是统一的,内容不同,并且用户可以打印。于是调研了有关 PDF 生成的方式,这里简单记录一下。方案是使用 itextpdf 这个类库对 PDF 模板进行内容填充,从而达到效果。demo 代码中有用到 zxing 进行二维码的生成,多张 PDF 合并成一张 P 阅读全文
摘要:
defaults write com.apple.dock springboard columns int 10 defaults write com.apple.dock springboard rows int 8 defaults write com.apple.dock ResetLaunc 阅读全文
摘要:
现在使用 Jenkins 自动化部署项目有这样一个问题,那就是项目使用到的 jar 包比较多,这就导致每次将 war 包上传到服务器上的时间就比较长。今天无意间看到一个方法可以大幅减少 war 包大小,提升效率。 方法很简单就是将第三方 jar 包直接放到 tomcat 的 lib 目录下,而不是放 阅读全文
摘要:
同步场景中阻塞和非阻塞 我们是用传统的水壶烧水。在水烧开之前我们一直做在水壶前面,等着水开。这就是阻塞的。 我们是用传统的水壶烧水。在水烧开之前我们先去客厅看电视了,但是水壶不会主动通知我们,需要我们时不时的去厨房看一下水有没有烧开。这就是非阻塞的。 异步场景中阻塞和非阻塞 我们是用带有提醒功能的水 阅读全文
摘要:
基本思路:将数字存入 set 集合中并不是一个很好的选择,占用的空间太大。这里可以使用 bitmap 数据结构来解决这个问题。 32 位机器上,对于一个整型数,比如int a=1 在内存中占 32bit 位,这是为了方便计算机的运算。但是对于某些应用场景而言,这属于一种巨大的浪费,因为我们可以用对应 阅读全文
摘要:
今天在学习 Redis 时,看到一个名词叫做布隆过滤器,出于好奇的心里学习了一下,这里记录相关内容。 什么是布隆过滤器 巴顿.布隆于一九七零年提出 一个很长的二进制向量 (位数组) 一系列随机函数 (哈希) 空间效率和查询效率高 有一定的误判率(哈希表是精确匹配) 本质上布隆过滤器是一种数据结构,比 阅读全文
摘要:
在平时我们常常使用 Redis ,这里总结一下 Redis 的相关面试题和一些常见问题的解决方案。 Redis 在互联网公司一般有已下应用: String:缓存、限流、计数器、分布式锁、分布式 Session Hash:存储用户信息、用户主页访问量、组合查询 List:微博关注人时间轴列表、简单队列 阅读全文
摘要:
1.比较运算能用 就不用 。 2.明知就只有一条查询结果就使用 ,这样可以避免全表扫描。 3.建表时为列选择合适的数据类型。 4.使用 代替 ,如果结果集允许重复的话。 会对结果集去重,效率很低。 5.为获得相同结果集的多次执行,请保持 SQL 语句前后一致。 比如第一次查询 ,那么第二次查询请保持 阅读全文