年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
青否云后端云 - wallimn
- vipbooks
- gashero
- wy_19921005
- benladeng5225
- fantaxy025025
- e_e
- javashop
- sam123456gz
- zysnba
- tanling8334
- arpenker
- kaizi1992
- xpenxpen
- lemonhandsome
- xiangjie88
- ganxueyun
- xyuma
- wangchen.ily
- Xeden
- jh108020
- zhanjia
- johnsmith9th
- zxq_2017
- jbosscn
- forestqqqq
- ajinn
- daizj
- wjianwei666
- ranbuijj
- 喧嚣求静
- silverend
- sichunli_030
- kingwell.leng
- lchb139128
- kristy_yy
- lich0079
- jveqi
- lzyfn123
- java-007
- sunj
- yeluowuhen
- lerf
- xiaoxinye
- flashsing123
- lxguy
- zhangjijun
最新文章列表
编码最佳实践(6)--那些年,我们一起建的索引
前几次的编码最佳实践系列,我们都着眼于Java代码,今天我们换个话题,看看另外一个领域,和Java代码大相径庭的SQL。
这次作为素材出场的,是来自项目中的一段SQL,用于BlackWhiteList Adapter,在每次请求时检查一下,看当前用户是否在黑白名单中。
先介绍一下数据库结构,很简单的三张表:BWLIST记录黑白名单信息,BWLISTXADDRESS记录每个 ...
编码最佳实践(5)--小心!这只是冰山一角
本期的案例依然是来自实际项目,很寻常的代码,却意外遭遇传说中的Java"内存溢出"。
先来看看发生了什么,代码逻辑很简单,在请求的处理过程中:
1. 创建了一个ArrayList,然后往这个list里面放了一些数据,得到了一个size很大的list
List cdrInfoList = new ArrayList();
for(...) {
...
编码最佳实践(4)--小心LinkedHashMap的get()方法
这是一个来自实际项目的例子,在这个案例中,有同事基于jdk中的LinkedHashMap设计了一个LRUCache,为了提高性能,使用了 ReentrantReadWriteLock 读写锁:写锁对应put()方法,而读锁对应get()方法,期望通过读写锁来实现并发get()。
代码实现如下:
private ReentrantReadWriteLock lock = new Re ...
编码最佳实践(2)--推荐使用concurrent包中的Atomic类
这是一个真实案例,曾经惹出硕大风波,故事的起因却很简单,就是需要实现一个简单的计数器,每次取值然后加1,于是就有了下面这段代码:
private int counter = 0;
public int getCount ( ) {
return counter++;
}
这个计数器被用于生成 ...