摘要: 主要有发起请求、验证身份、协商秘钥、加密会话 4大步骤 1)客户端向服务端发起建立HTTPS请求。 2)服务器向客户端发送数字证书。 3)客户端验证数字证书,证书验证通过后客户端生成会话密钥(双向验证则此处客户端也会向服务器发送证书)。 4)服务器生成会话密钥(双向验证此处服务端也会对客户端的证书验 阅读全文
posted @ 2024-03-21 15:53 坏男银 阅读(42) 评论(0) 推荐(0) 编辑
摘要: BeanDefinition的产生: SpringBoot在启动过程中,主要是刷新上下文的时候会将绝大部分的需要的bean生成BeanDefinition加入到容器(DefaultListableBeanFactory的beanDefinitionMap) Bean的生命周期: 会在SpringBo 阅读全文
posted @ 2024-03-21 15:07 坏男银 阅读(26) 评论(0) 推荐(0) 编辑
摘要: 三级缓存的概念是针对单例bean来说的,原型的bean是每次直接创建新的bean对象, IoC容器中,同一个bean或者其代理对象只能存在一个,不能同时存在 一级缓存 存放完整的bean(实例化和初始化都已完成) 二级缓存 提前曝光的不完整的bean(可能是bean,也可能是bean的AOP代理,未 阅读全文
posted @ 2024-03-20 20:26 坏男银 阅读(646) 评论(0) 推荐(0) 编辑
摘要: -- 学生表CREATE TABLE t_student ( id BIGINT PRIMARY KEY, name VARCHAR(255), gender VARCHAR(255), age INT, address VARCHAR(255), INDEX idx_age (age) ); -- 阅读全文
posted @ 2024-03-20 12:44 坏男银 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 以前只是简单的用了一下MyBatis,对于内部是如何工作的并不清楚 以下是从各个网站找到的MyBatis的原理 启动/初始化:SqlSessionFactory(接口):创建的是DefaultSqlSessionFactory,会完成全局配置文件和映射文件的加载解析操作,把配置相关的信息保存在fac 阅读全文
posted @ 2024-03-18 16:57 坏男银 阅读(93) 评论(0) 推荐(0) 编辑
摘要: SpringApplication的run方法 使用SpringFactoriesLoader读取listener和ApplicationContextInitializer 创建环境变量,读取配置信息 创建上下文(IoC容器,ApplicationContext) 预初始化上下文(prepareC 阅读全文
posted @ 2024-03-15 16:53 坏男银 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 前些天看到一个有意思的说法,当HashMap的key为Integer时,map就是有序的,我来研究一下。 我们都知道HashMap是无序的,TreeMap是有序的,数组和链表也是有序的,为啥会变成有序呢?我们先来随便测试一下 果然,key是0到100的时候都是有序的,不管使用keySet还是entr 阅读全文
posted @ 2024-03-15 09:49 坏男银 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 首先,你在pom文件里引入的很多第三方jar里都有一个文件 META-INF/spring.factories,这个文件里的内容和关系到能否自动配置, 那有的jar为啥没有,是不需要SpringBoot来自动配置吗,这个我们后面再说。 先来看一下redisson starter的/ META-INF 阅读全文
posted @ 2024-03-14 22:55 坏男银 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 转载自https://blog.csdn.net/weixin_43735348/article/details/127580774 阅读全文
posted @ 2024-03-06 10:57 坏男银 阅读(7) 评论(0) 推荐(0) 编辑
摘要: MySQL Analyze: step 1. Thread(test1) use "select for update" lock common age index in range (10,30] step 2. Thread(test2) use "select for update" lock 阅读全文
posted @ 2024-03-04 13:41 坏男银 阅读(8) 评论(0) 推荐(0) 编辑