• Java并发体系整理

    多线程线程和进程的区别线程是任务调度的最小单位,进程是资源分配的最小单位。这点从内存空间的结构也可以看出来: JVM为进程分配资源,因此同一个进程中的线程共享堆和方法区 JVM调度线程,因此每个线程有独立的方法栈和PC 从历史意义上说,线程是一种...
  • Java知识体系整理

    基本问题Java特点 面向对象 平台无关 安全可靠 网络编程友好 多线程编程 编译与解释并存 JVM/JRE/JDKJVM:运行平台JRE:基本运行环境,包含JVMJDK:开发者套件,包含JRE 字节码好处只对虚拟机负责,具体的...
  • Java集合体系整理

    常见集合List、Set、Queue和Map区别 List:线性表,有序存储元素 Set:无序、不可重复的集合 Queue:FIFO的队列 Map:存储键值对的映射关系的表 线性表ArrayList和Array的区别 前者基于Object的Arra...
  • MySQL随记

    难点 索引选择由于普通索引可以有多个值,在查找到满足条件的项后仍会继续查找,直到查询到不满足条件的项为止,而唯一索引在查找到后就可以返回了,因此普通索引查找效率要劣于唯一索引 索引结构为B+树,只有叶子存储值,其他存储索引 即便是索引,每次也是加载一...
  • 计算机网络知识体系

    结构 OSI七层模型 TCP/IP五层/四层模型 应用层 举例:HTTP FTP SMTP DNS SSH等 URL/URI区别 体系架构:P2P/CS DNS域名系统原理:host->本地缓存-&...
  • JVM内存区域结构

    运行时数据区域 线程共享 堆(Heap) 方法区(Method Area) 运行时常量池(Runtime Constant Pool) 字...
  • JVM垃圾回收过程

    关于对象的生命周期在这篇文章中阐述 垃圾回收算法 标记-清除算法标记-清除算法(Mark-and-Sweep)是最基础的GC算法,后续算法主要是该算法基础上的改进,主要分为两个步骤 标记堆中可被回收的对象 统一对被标记的对象的内存空间进行回收 该...
  • 对象的生命周期和可回收性判断

    对象年龄分代 GC对于不同年龄的对象有不同的回收规则,其中对象根据根据其内部文件头的年龄计数器大体上被分为三类 内存空间 分代 堆 新生代(YoungGe...
  • Java内存模型

    概述Java内存模型(Java Memory Model)是为了避免不同操作系统之间内存模型的不同,从而导致多线程工作时的结果不一致问题。 一方面来说,由于不同CPU的Cache结构不同导致操作系统的内存模型不同,另一方面,操作系统会对代码进行指令重...
  • 1.介绍和基本配置

    Mybatis是什么 Mybatis是一个Java的持久层框架,数据持久层(DAO层)是在程序中直接对数据库进行持久化操作的部分。JDK自身提供了访问数据库的接口API——JDBC,Mybatis本质上是对JDBC的封装。JDBC在开发过程中过于面向...