1、POJO命名
数据对象:xxDO(对应于数据表)
数据传输对象:xxxDTO(业务领域)
展示对象:xxxVO(一般为网页名称)
2、服务器设置
1、高并发服务器高小TCP协议的Time_await时间
2、调大服务器支持的最大文件句柄数
3、JVM的 -XX:+HeapDunpOnOutOfMemoryError
3、@Transactional事务不要滥用,事务影响数据库QPS,使用事务地方考虑各方面的回滚,包括缓存,搜索引擎,消息补偿,统计修正
4、线程池不允许使用Excutors创建,使用ThreadPoolExecutor或ScheduledExecutorService方式处理
5、subList用来返回一个list的部分视图
1、非结构性修改,影响彼此
2、结构性,如发生在subList,原list发生变化,如发生在list,产生异常
6、使用list.toArray(T[] array)时,应指定array的大小(list,size())
7、使用工具类Arrays.asList()转换数组,不可使用集合类的add,remove,clears等方法(适配器)
8、extends super
?extends T 子类型限定,可用于返回类型限定,不能用于参数类型限定
? super T 超类型限定,可用于参数类型限定,不能用于返回类型限定
super超类型限定通配符可以向泛型对象写入,extends子类型限定的通配符向泛型对象读取
9、jdk7以上,comparator
1、x>y -> y<x
2、x>y, y>z -> x>z
3、x=y -> 则x, z比较结果和y, z的比较结果相同
10、集合初始化 (要存的个数/(负载因子×0.75)) + 1,无法确定取16
11、推荐entrySet遍历
12、
key能否为NULL | value能否为NULL | |
Hashtable | N | N |
ConcorrentHashMap | N | N |
TreeMap | N | Y |
HashMap | Y | Y |