- 博客(5)
- 收藏
- 关注
原创 MySQL--索引最佳实践
按照BTree索引的工作原理,先排序name,如果遇到相同的name则再排序age,如果遇到相同的age则再排序position,当age字段在复合索引中间时,因age>25条件是一个范围值(所谓range),MySQL无法利用索引再对后面的position部分进行建索,即range类型查询字段后面的索引无效。指的是查询从索引的最左前列开始并且不跳过索引中的列。os:如果全值匹配了,顺序不一样,mysql执行器会对sql进行优化,走索引(待测试)a)使用覆盖索引,查询字段必须是建立覆盖索引字段。
2023-05-28 18:00:24 62 1
原创 IDEA-自定义方法注释模板(去param括号、return全类名)-保姆级!!!
1. File -- Settings-- Editor -- Live Templates 2. 点击右侧小 + 选择Templat Group ,创建Group,名字随便 3. 选择右侧小 + 选择Live Template 4. 填写模板信息 注意: (1):Abbreviation建议为 * (/**即可) 如果为 adc 则需要 /*adc (2):快捷键默认为 Tab 建议改为 Enter 具体操作(/**(第二个*为Abbreviation设置的值) + Enter) .
2021-09-27 17:18:09 444
原创 mysql-索引
索引:帮助MySQL搞笑获取数据的排好序的数据结构 例子: 找89 不带索引 6次io 带索引 2次io 索引的数据结构 二叉树 红黑树 hash表 b-Tree 如图是二叉树的数据结构,当数据递增时,会退化成链表。 红黑树:平衡二叉树 缺点:数据量过大的时候,树的高度会很高,每一层高度都代表一次磁盘io 每一个节点都相当于在磁盘当中开辟了一块存储空间,为了层数少点,可以把磁盘上的存储空间开大点,一层上可以放更多索引,解决层树过高问题 优化B-树,在更小的...
2021-08-29 19:02:05 226
原创 juc总结
Lock 和 synchronized 区别 1:Lock不是java语言内置 synchronized是java关键字 Lock是一个类 通过这个类可以实现同步访问 2:synchronized不需要用户去手动释放锁 当synchronized方法或者代码块执行完之后,系统会自动让线程释放锁的占用; 在发生异常时 会自动释放线程占有的锁 不会导致死锁现象 Lock在发生异常时 如果没有主动调用unLock()方法 很有可能会造成死锁 Lock需要在finally块中释放锁 Lock需要用户手动.
2021-08-29 17:13:59 61
原创 集合详解(ArrayList+LinkedList+HashSet源码通俗讲解)
集合是每次面试都绕不过的重点,这一次做一个全面的总结和梳理! 目录 基础介绍 List ArrayList Vector LinkedList Set HashSet 小结 基础介绍 java是面向对象的语言,为了方便操作多个对象,我们需要集合(Collection)去存储对象 数组和集合的区别: 1:长度的区别 数组的长度固定 集合的长度可变 2:元素的数据类型 数组可以存储基本数据类型,也可以存储引用类型 集合只能存储引用类型(你存储的是简单的int,它会...
2021-07-18 23:23:56 183 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人