首页 / 作者AUTHOR / SPRINGFORALL

hello

记录技术探索,分享实践心得。

共 1788 篇文章

Java线程池设计思想及源码实现

前言 线程池是非常重要的工具,如果要成为一个好的工程师,还是得比较好地掌握这个知识,很多线上问题都是因为没有用好线程池导致的。 总览 下图是 java 线程池几个相关类的继承结构: 先简单说说这个继承结构,Executor 位于最顶层,也是最简单的,就一个 execute(Runnable runnable) 接口方法定义。 ExecutorService…

MySQL的页与行格式

什么是MySQL的页? 页是指存储引擎使用的最小的数据存储单位。 当 MySQL 执行读取或写入操作时,是以页为基本单位来进行操作的。即使读写一条数据,MySQL 也会按页操作。 MySQL 的存储引擎会将数据分成多个页,并根据需要将这些页加载到内存中进行处理。 通过使用页来组织数据,MySQL 能够更高效地管理存储空间,减少读取数据时的硬盘 I/O…

MySQL explain

简介 mysql explain(或desc)用于分析SQL语句的执行计划,多用于测试查询性能。语法:explain sql… 注意 explain执行DML语句,数据不发生变化。 explain执行的结果可以有多条数据,一条数据对应一个表,如果涉及union,MySQL内部会产生一个临时表,就会导致结果多一行数据。 union…

Java LinkedList和Queue 介绍

LinkedList 概述 LinkedList与ArrayList一样实现List接口,只是ArrayList是List接口的大小可变数组的实现,LinkedList是List接口链表的实现。基于链表实现的方式使得LinkedList在插入和删除时更优于ArrayList,而随机访问则比ArrayList逊色些。…

Java ArrayList,Vector与Stack介绍

ArrayList ArrayList概述 ArrayList是实现List接口的动态数组,所谓动态就是它的大小是可变的。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。…