自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 CPU相关知识点

CPU的概念中央处理器(central processing unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。CPU自产生以来,在逻辑结构、运行效率以及功能外延上取得了巨大发展。CPU内部结构控制单元控制单元是整个CPU的指挥控制中心,由指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)和 操作控制器OC(Operation Controller) 等组成,对协调整个电脑有序工作.

2021-04-11 21:38:53 415

原创 Spring源码-AnnotationConfigApplicationContext容器的创建过程

Spring提供了多种IOC容器用来管理bean,其中最常见的就是AnnotationConfigApplicationContextAnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MainConfig.class);AnnotationConfigApplicationContext构造函数如下首先调用父类构造函数初始化一个BeanFactory//调用父类无参构造函

2020-11-01 23:48:49 826

原创 MySQL字符集与比较规则

编码解码将字符映射成二进制数据的过程称为编码,将二进制数据映射成字符的过程称为解码。比较规则将不同字符进行大小比较的规则,注意同一种字符集可以有多种比较规则。MySQL中的字符集和比较规则有四个级别:服务器级别,数据库级别,表级别,列级别比较规则的作用主要是比较字符串的大小或对字符串列进行排序MySQL在字符集转换过程1.客户端使用操作系统的字符集对请求字符串编码,然后将编码后的字符串发送到服务器2.服务器将客户端发送过来的字符串采用charcter_set_cl..

2020-05-10 23:34:37 282

原创 MySQL的运行原理

MySQL分为服务端和客户端,MySQL客户端和服务端都代表一个计算机进程,拥有唯一的进程PID,MySQL服务器的进程也被称为数据库实例客户端与服务端的连接MySQL服务器在启动的时候会默认监听3306端口,采用TCP作为服务端与客户端之间的通讯协议。服务器处理客户端的请求过程MySQL完成客户端与服务端的连接管理以及查询语句的解析与优化后,真正对数据进行存取是通过存储引擎来进行完成的,MySQL默认的存储引擎是InnoDB,我们可以在建立每张表的时候为其建立不同的存储引擎..

2020-05-10 14:08:23 373

原创 数据结构与算法-链表篇

链表与数组不同,是在物理空间中非连续的,依靠前一个节点记录下一个节点的地址进行连接的一种数据结构。链表中每个节点存储的内容为当前节点和下个节点的指针。链表一般分为三种1.单向链表2.双向链表3.循环链表,循环链表又分为循环单向链表和循环双向链表链表中插入或删除节点的时间复杂度分两种:1.删除等于某个值的节点,复杂度为O(n), 因为要先查询2...

2020-04-12 23:45:45 179

原创 数据结构与算法-数组篇

数组是一种线性数据结构(数据之间只是简单的前后关系), 用一组连续的内存空间来存储一组具有相同类型的数据数组支持随机访问, 根据下标随机访问的时间复杂度为O(1),如果正常查找数据用二分查找时间复杂度O(logn)数组插入和删除的时间复杂度都是O(n)java中数组的表示方式 int[] arr = new int[3]; int[] arr = new in...

2020-04-08 22:52:26 181

原创 mysql中索引的相关知识

声明:本文主要以Innodb存储引擎的索引介绍,MyISAM本文不做过多介绍,主要区别是MyISAM中索引和数据是分开存储的,索引每次查询都有回表操作,但是由于索引文件中存储的是数据文件的地址偏移量而不像Innodb通过索引再去聚簇索引进行一次查询,所以速度还是很快的,分场景进行选择使用。Innodb中索引主要分为两种1.聚簇索引:满足以下几个条件,页内的记录是按照主键大小排成的单向链表,...

2020-04-04 23:00:40 133

原创 mysql中Innodb简介

1.myql默认的存储引擎是Innodb,数据库读取和操作数据都是通过存储引擎进行的。2.Innodb为了避免从磁盘读取数据过多,将存储数据在磁盘和内存中通过页为单位进行交互,一个页默认16kb,一般情况一次读取最少读取16kb内容3.Innodb引擎中的记录行格式有四种分别为COMPACT(如图),Redundant,Dynamic(mysql5.7后默认),Compressed。4...

2020-03-31 20:00:29 311

原创 volatile

volatile是java虚拟机提供的轻量级同步机制,作用如下•可见性:保证被volatile修饰的共享变量对所有线程总数可见的,也就是当一个线程修改了一个被volatile修饰共享变量的值,新值总是可以被其他线程立即得知。•有序性:禁止指令重排序优化。volatile缓存可见性实现原理•JMM内存交互层面:volatile修饰的变量的read、load、use操作和assign、...

2019-08-01 17:33:23 138

原创 JMM模型

JMM描述的是一组规则,通过这组规则控制程序中各个变量在共享数据区域和私有数据区域的访问方式,JMM是围绕原子性,有序性,可见性展开JMM模型跟CPU缓存模型结构类似,是基于CPU缓存模型建立起来的,JMM模型是标准化的,屏蔽掉了底层不同计算机的区别。对于硬件内存来说只有寄存器、缓存内存、主内存的概念,并没有工作内存(线程私有数据区域)和主内存(堆内存)之分,也就是说Java内存模型...

2019-08-01 17:20:50 143

原创 cpu cache和MESI

cpu cache现在是三级缓存结构,cache的意义:cpu频率较高,内存处理慢,cache的出现是为了解决cpu和内存之间速度不匹配的问题缓存一致性:mesi协议可以使cpu缓存达成一致性cache line是cache与内存数据交换的最小单位,根据操作系统一般是32byte或64byte。在mesi协议中,状态可以是四种,地址是cache line中映射的内存地址,数据则是从内存中读...

2019-07-26 18:00:13 221

原创 多线程

操作系统上运行的一个程序是一个进程。如启动一个java程序就会创建一个java进程。操作系统调度cpu的最小单元是线程,一个进程可以创建多个线程,这些线程都拥有各自的计数器,堆栈和局部变量等属性并能访问共享的内存变量。处理器在不同线程告诉切换,让使用者感觉这些线程在同时执行线程的实现分为两类 1.用户级线程 2.内核级线程...

2019-07-26 17:59:28 119

原创 SOCKET编程 IO与NIO

socket是网络编程的基础,通过socket不同的计算机之间可以进行数据的交互。JAVA中IO操作是阻塞的,每个操作都要创建一个线程,容易对资源造成浪费。而NIO的出现解决了这一点,NIO可以通过Selector在单线程的情况下管理多个网络连接。 IO是面向流的而NIO是面向缓冲区的,NIO属于非阻塞IO。NIO的核心主要由Buffer,Channel,Selector组成1.B...

2018-11-06 21:06:33 395

原创 Spring MVC基础

springmvc架构流程//springmvc三大组件:处理器映射器,处理器适配器,试图解析器//需要用户开发的组件:handler,view//@RequestMapping:定义请求url到处理器功能方法的映射//处理器映射器根据请求url找到具体的处理器,生成处理器对象返回给前端控制器//前端控制器通过处理器适配器调用处理器配置处理器

2017-09-07 22:39:34 261

原创 Session和Cookie

共同点:cookie和session都是会话技术1.数据存放: cookie服务器获得用户请求之后,把请求的资源保存好,然后在给服务器响应的时候,将数据存放在客户的浏览器上,session是web服务器针对用户的请求创建的一个容器,当客户端请求的时候,服务器会读取请求中的session信息,如果检索不到对应的sessionID,就会创建一个session,并分配一个sessionID,

2017-06-27 23:09:55 295

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除