- 博客(28)
- 收藏
- 关注
原创 计算机网络常见概念
流量控制就是指,控制发送方的发送数据的速率。接受方通过TCP头部的窗口(占2个字节),来告知发送方降低发送的速率。来达到流量控制的效果。发送方通过滑动窗口的来实现对数据包发送速率的实现。滑动窗口是实现TCP协议流量控制的机制。发送方与接收方都维护了自己的缓冲区,缓冲区就是窗口,发送方的滑动窗口由接受方发送的TCP头部中的窗口定义。发送方的窗口有:已发送并确认,发送未确认,未发送未确认,未发送未确认超出滑动窗口。发送方通过拥塞窗口来控制每次发送数据包的个数。
2023-09-22 17:47:34
347
原创 Redis持久化
Redis 对外提供数据访问服务时,使用的是常驻内存的数据。如果仅将数据存在内存,一旦宕机重启,数据全部丢失。 redis所有数据保持在内存中,对数据的更新将异步地保存到磁盘上。持久化主要是做灾难恢复、数据恢复,可归类到高可用。比如你的Redis宕机,你要做的事情是让Redis变得可用,尽快变得可用!重启Redis,尽快让它对外提供服务,若你没做数据备份,即使Redis启动了,数据都没了!可用什么呢?很可能说,大量的请求过来,缓存全部无法命中,在Redis里根本找不到数据,这个时候就造成缓存雪
2023-08-28 16:02:54
161
原创 ThreadLocal
ThreadLocal被称为线程局部变量,用于在线程中保存数据。由于在ThreadLocal中保存的数据仅属于当前线程,所以该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。ThreadLocal用于在同一个线程间,在不同的类和方法之间共享数据的的场景,也可以用于在不同线程间隔离数据的场景。ThreadLocal利用Thread中的ThreadLocalMap来进行数据存储。// 线程局部变量@OverridethreadLocal.set("妲己");show();
2023-08-22 22:37:34
193
原创 SpringBoot自动配置原理
Spring Boot 的自动配置可以根据添加的jar依赖,自动配置 Spring Boot 应用程序。例如,我们想要使用Redis,直接在POM文件中增加依赖,然后我们配置下连接信息就可以使用了。那么Spring Boot 是如何实现自动配置的呢?下面通过源码分析,来看自动配置的原理。
2023-08-21 19:42:58
151
原创 springIoc与Aop
IoC (Inversion of control )控制反转/反转控制。它是一种思想不是一个技术实现。描述的是:Java 开发领域对象的创建以及管理的问题。IOC名词解释,作用是解耦,使用IOC容器管理项目组件之间的耦合关系IOC( Inversion of Control,中文释义:控制反转 ) 是Spring框架的核心思想之一,主要用于解耦。IOC是指将创建对象的控制权转移给Spring框架进行管理。由Spring框架根据配置文件或注解等方式,创建bean对象并管理各个bean。
2023-08-05 17:57:06
140
原创 MyBatis异常报错:元素类型为 “resultMap“ 的内容必须匹配 “(constructor?,id*,result*,association*,collection*,discrimina
resultMap总结。
2023-07-24 19:21:48
250
原创 《ReentrantLock与synchronized的区别》
FairSync类也继承了 Sync类,表示采用公平策略获取锁:当资源空闲时,它总是会先判断 sync队列是否有等待时间更长的线程,如果存在,则将当前线程加入到等待队列的尾部,实现了公平获取原则。NonfairSync类继承了Sync类,表示采用非公平策略获取锁:每一次都尝试获取锁,不会按照公平等待的原则进行等待,不会让等待最久的线程获得锁。在获取可重入锁时,要记录这是第几次获取,没获取一次记录+1,每次退出可重入锁,记录-1,减到0时,才会真正释放锁。只有获取this锁的线程才能访问当前方法。
2023-07-19 19:55:38
974
原创 《线程池的执行流程》
线程池是一种多线程处理形式,内部维护了若干个线程。没有线程任务的时候,线程都处于空闲状态。如果有新的线程任务,就分配给空闲线程执行。如果所有线程都处于忙碌状态,线程池会创建新线程或者将线程任务放入工作队列中。
2023-07-18 20:26:58
118
原创 《线程的实现方式》
线程的实现方式有四种:第一种是继承Thread类,第二种是实现Runnable接口;第三种是实现Callable接口;最后是通过线程池创建线程。
2023-07-18 19:26:29
162
1
原创 《AES算法的CBC和ECB两种工作模式》
3、使用SecretKey,IvParameterSpec初始化Cipher实例,并设置加密模式或解密模式。1、DES(Data Encryption Standard):数据加密标准,速度较快,适合加密大量数据。ECB是最简单的AES加密模式,它需要一个固定的秘钥,固定的明文会产生固定的密文。3、使用SecretKey初始化Cipher实例,并设置加密模式或解密模式。秘钥的长度决定加密长度,工作模式和填充模式可以看成是对称加密算法的参数和格式选择。4、传入明文或密文,获取密文或明文。
2023-07-17 19:07:58
246
1
原创 Java反射(Reflection)总结
Java反射就是在程序运行状态下,对于任意一个类,都能获取到类的所有信息,例如:属性,方法。对于任意一个对象,都能调用它的任意方法和属性。简单来说,反射就是在程序运行期间能够获取自身的信息。要了解反射,就必须要了解Class类。
2023-07-12 20:32:35
426
3
原创 Hash算法总结
哈希算法(Hash)又称摘要算法(Digest),它的作用是:对任意一组输入数据进行计算,得到一个固定长度的输出摘要。相同的输入一定得到相同的输出;不同的输入大概率得到不同的输出。所以,哈希算法的目的:为了验证原始数据是否被篡改。Java字符串的hashCode()就是一个哈希算法,它的输入是任意字符串,输出是固定的4字节int整数.例如:两个相同的字符串永远会计算出相同的hashCode,否则基于hashCode定位的HashMap就无法正常工作。
2023-07-10 19:08:54
258
1
原创 整理FTP协议相关知识,撰写FTP服务器文件列表展示、文件上传、文件下载等代码案例和实现步骤细节;
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和\"上传\"(Upload)。\"下载\"文件就是从远程主机拷贝文件至自己的计算机上;\"上传\"文件就是将文件从自己的计算机中拷贝至远程主机上。
2023-07-08 17:10:17
627
1
原创 JavaMail相关代码案例(邮件发送)
/SMTP服务器连接信息//SMTP主机名//主机端口号//是否需要认证//启用TLS加密//创建Session会话//参数1:smtp服务器连接参数//参数2:账号和密码的授权认证对象@Override// TODO 自动生成的方法存根});
2023-07-08 16:15:59
984
1
原创 《LinkedList源代码阅读》
LinkedList是基于双端链表的List,其内部的实现源于对链表的操作,适用于频繁增加、删除的情况,不适用于频繁的查找;该类不是线程安全的;另外,由于LinkedList实现了Queue接口,所以LinkedList不止有队列的接口,还有栈的接口,可以使用LinkedList作为队列和栈的实现。
2023-04-23 11:32:34
80
原创 Java数组类型
定义一个数组类型的变量,使用数组类型“数据类型[]”的语法,例如,int[]。和单个基本类型变量不同,数组变量初始化必须使用new int[5]或{... ...}表示创建一个可容纳5个int元素的数组内存空间。Java的数组有几个语法特点:●数组所有元素初始化为默认值,整型都是0,浮点型是0.0,布尔型是false;●数组一旦创建后,大小就不可改变,所以说数组长度固定;●访问数组中的某一个元素,需要使用索引。数组索引从0开始。例如,5个元素的数组,索引范围是0~4。
2022-12-12 18:57:16
845
1
原创 微信小程序全局生命周期和页面生命周期。
生命周期是指一个对象从创建→>运行>销毁的整个阶段,强调的是一个时间段。我们可以把每个小程序运行的过程,也概括为生命周期:小程序的启动,表示生命周期的开始小程序的关闭,表示生命周期的结束中间小程序运行的过程,就是小程序的生命周期。...
2022-08-15 19:28:25
427
原创 js原型和原型链及原型继承
当查找一个对象的属性时,js会向上遍历原型链,直到找到给定名称的属性为止,如果查找到达原型链的顶部 ,也就是 Object.prototype ,但是仍然没有找到指定的属性,就会返回 undefined。js中,每当定义一个对象时,对象中都会包含一些预定义的属性。每个函数对象都有一个prototype属性,这个属性指向函数的原型对象。每个实例对象都有一个"_proto_"属性,这个属性指向原型对象。原型对象都会有一个constructor属性,这个属性又会指向prototype所在的函数(构造函数)。...
2022-08-10 19:11:00
88
原创 常见CSS样式
1.css选择器(1)标签选择器(2)类(class)选择器(3)id选择器(4)三种选择器的优先级:2.网页中引入css样式(1):内联(行内)样式(2):内部样式表(3):外部样式表(4)三种css样式优先级3.基础样式(1):字体样式(2).文本样式(3).鼠标样式(cursor)(4).背景样式(5).列表样式4.css伪类5.css高级选择器6.边框样式(1)(2)边框颜色:(3)边框粗细:(4)边框简写:..
2022-07-20 18:40:49
640
3
原创 常用HTML标签及其属性
一、基本标签1.标题标签2.段落标签3.斜体4.粗体5.水平线标签6.换行标签二、特殊符号三、超链接四、锚链接五、图像标签六、列表1.无序列表2.有序列表3.自定义列表七、表格八、表单九、多行文本域...
2022-07-12 22:30:35
496
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人