Git有四个工作区域: (图片来源于网络,图侵删)1)workspace:工作区,在本地电脑代码存在路径下的目录,本地IDE直接编辑的代码就存放在工作区。2)Index / ...
Git有四个工作区域: (图片来源于网络,图侵删)1)workspace:工作区,在本地电脑代码存在路径下的目录,本地IDE直接编辑的代码就存放在工作区。2)Index / ...
数据库索引意在提升检索效率。通过创建唯一索引可以保证数据库表中每一行数据的唯一性。排序后可以将随机的I/O转换成顺序I/O。 索引是如何提高检索速度的?将无序的数据存储转为相...
建表:create table user (id int auto_increment primary key,name varchar(20) not null,sex v...
1.如何拆分微服务 从起点开始考虑:现有架构是何种形态,这个微服务是从老项目剥离出来重构呢还是新项目直接采用微服务?这个业务需求是否适合采用微服务架构。 从终点考虑:...
Vector定义 Vector中的操作是线程安全的,Vector对元素的操作方法均有synchronized关键字修饰。 Vector所有API Vector的数据结构和Ar...
综述(01) List 是一个接口,它继承于Collection的接口。它代表着有序的队列。(02) AbstractList 是一个抽象类,它继承于AbstractColl...
Hashtable定义 Hashtable 也是一个散列表,它存储的内容是键值对(key-value)映射。 Hashtable 的函数都是同步的,这意味着它是线程安全的。它...
题目描述:给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。 示例:输入:A: [1,2,3,2,1]B: [3,2,1,4,7]输出: 3解释:长...
综述(01) Map 是“键值对”映射的抽象接口。(02) AbstractMap 实现了Map中的绝大部分函数接口。它减少了“Map的实现类”的重复编码。(03) Sort...
String 是不可变量。用final关键字修饰字符数组来保存字符串。 StringBuffer 和 StringBuilder都继承自AbstractStringBuild...
InnonDB引擎支持行级锁(row-level locking)和表级锁(table-level locking),默认为行级锁。 锁的分类:按照锁的粒度分类表级锁: My...
多线程状态图 新建状态(new),线程对象被创建后就进入了新建状态Thread th = new Thread(); 可执行状态(runnable,就绪状态),其他的线程调用...
常见的实现多线程的方式:Thread和Runnable其他方式:实现Callable接口通过Future/FutureTask包装器来创建Thread线程,通过线程池实现有返...
Thread的start()方法 说明:start()实际上是通过本地方法start0()启动线程的。而start0()会新运行一个线程,新线程会调用run()方法。 Thr...
Java中,每个对象有且只有一个同步锁。调用对象的synchronized方法时,就获取了该对象的同步锁。Java中一共有两种类型的锁Java类锁(全局锁):类锁是用sync...
线程的等待与唤醒在Object.java中,定义了wait(), notify()和notifyAll()等接口。wait()的作用是让当前线程进入等待状态,同时,wait(...
一致性非锁定读(consistent nonlocking read)一致性非锁定读是指InnoDB存储引擎通过多版本控制(multi versionning)的方式来读取当...
事务一. 事务的特性(ACID) 原子性(Atomicity): 事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么全部失败回滚;拿转账来说,假设用户A...
equals()equals() 的作用是 用来判断两个对象是否相等。 Object.java中的equals()方法 通过判断两个对象的地址是否相等(即两个引用是否指向同一...