m2492565210

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

 

 

 

 

 

 

 

13、jdk8使用Instance代替Date,LocalDateTime代替Calendar,DateTimeFormater代替SimpleDateFormater

14、并发修改同一个记录时,避免更新丢失,需要加锁,要么在应用层加锁,要么在缓存加锁,要么在数据应用层加锁,使用version作为更新依据

15、冲突小于20%时,使用乐观锁,重试不小于3次

16、多线程下使用ThreadLocalRandom

17、主键索引名 pk_字段名,唯一索引名 uk_字段名,普通索引名 idx_字段名

18、小数类型使用 decimal

相关文章:

  • 2021-11-02
  • 2021-12-26
  • 2021-11-22
  • 2021-10-17
  • 2021-12-05
  • 2021-11-20
  • 2021-11-10
  • 2021-12-13
猜你喜欢
  • 2021-11-05
  • 2021-11-27
  • 2021-10-16
  • 2019-08-19
  • 2021-05-13
  • 2021-09-09
  • 2021-06-19
相关资源
相似解决方案