阿里面试官:什么是MySQL索引,为什么要有索引?

一、什么是索引? 索引就好比字典的目录一样 我们通常都会先去目录查找关键偏旁或者字母再去查找 要比直接翻查字典查询要快很多 二、为什么要有索引? 然而我们在使用mysql数据库的时候也像字典一样有索引的情况下去查询,肯定速度要快很多 2.1问题: 1.mysql数据存储在什么地方? 磁盘 2.查询数 ... »

2021超详细的HashMap原理分析,面试官就喜欢问这个!

##一、散列表结构 散列表结构就是数组+链表的结构 二、什么是哈希? Hash也称散列、哈希,对应的英文单词Hash,基本原理就是把任意长度的输入,通过Hash算法变成固定长度的输出 这个映射的规则就是对应的哈希算法,而原始数据映射后的二进制就是哈希值 Java并发编程学习笔记,关注公众号:程序员追 ... »

为什么MySQL不推荐使用uuid作为主键?

前言 在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一,单机递增),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏处?关注公众号:程序员追风,回复012获取一套50 ... »

ConcurrentHashMap线程安全吗?

前言 没啥深入实践的理论系同学,在使用并发工具时,总是认为把HashMap改为ConcurrentHashMap,就完美解决并发了呀。或者使用写时复制的CopyOnWriteArrayList,性能更佳呀!技术言论虽然自由,但面对魔鬼面试官时,我们更在乎的是这些真的正确吗?整理了100+个Java项 ... »

作为Java新手,如何才能快速的看透一个Java项目?

前言 技术学习是一个总结、纠错、触类旁通的过程,而不是单纯重复练习的过程,如果你问一个做过5年以上Java的老码农,他们很多人都会有很强的“搬砖感”,这种“搬砖感”其实就是对Java项目的触类旁通、看出套路来了,比如: (1)绝大部分Java应用系统,绝大部分功能归根到底都是数据库的“CRUD增删改 ... »