自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mac配置多JDK环境下快速切换

Mac配置多jdk环境下快速切换建议从IDEA工具内下载jkd,方便快捷IDEA > File > Project Structure… > Platform Settings > SDKs > + > Download JDK…编辑~/.bash_profilevim ~/.bash_profile写入多个jdk路径(换行)export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.

2022-01-31 10:41:28 698

原创 M1 MacBook安装Homebrew,中国区使用CunKai大神脚本太香了

Homebrew官网:https://brew.sh/按照官网的操作会遇到错误在终端下运行/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"结果:curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused安装步骤首先创建安装目录.

2021-05-15 17:33:50 758

原创 MySQL主要的两种存储引擎:MyISAM、InnoDB比较

索引区别MyISAM不管是主键索引,唯一键索引,或者普通索引,都是属于稀疏索引。InnoDB必须有且仅有一个密集索引,这个密集索引的选取规则如下:若一个主键被定义,该主键则作为密集索引;若没有主键被定义,将表的第一个唯一非空索引则作为密集索引;若不满足以上条件,InnoDB内部会生成一个隐藏主键(密集索引),这个隐藏的主键是一个6字节的列,该列的值会随着数据的插入而自增,也就是说,我们的InnoDB必须有一个主键,而该主键就必须作为唯一的密集索引而存在。InnoDB必须有一个主键

2021-03-26 10:27:26 192

原创 【相见恨晚】轻松解决解除网页文字复制限制

懒人教程复制以下代码javascript:"use strict";!function(){var t=function(t){t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation()};["copy","cut","contextmenu","selectstart","mousedown","mouseup","keydown","keypress","keyup"].forEach(

2021-03-26 00:05:07 5785 6

原创 JAVA的 Error 与 Exception 解释与例子

Error:是程序无法处理的错误,表示应用程序运行时出现严重问题。大多数错误与程序员编写的代码无关,而表示代码运行时 JVM出现的问题。这些错误表示故障发生于虚拟机自身、或者发生在虚拟机试图执行应用时。例如,Java虚拟机运行错误VirtualMachineError当 JVM 不再有足够的内存资源继续执行操作时,将出现 OutOfMemoryError当递归过深,栈帧数超出了虚拟机栈深度引发StackOverflowError这些错误发生时,JVM一般会终止线程。这

2021-03-16 16:41:54 221 1

原创 Java GC 垃圾回收机制深入理解:常见垃圾回收算法、常见的垃圾收集器、详解分代收集算法

垃圾回收GCGarbage Collection(垃圾回收器)回收不再使用的内存GC主要任务:分配内存确保引用回收内存GC回收依据:对象没有任何引用优点缺点引用计数算法通过判断对象的引用数量决定对象是否可以被回收每个对象实例都有一个引用计数器,这个数在被引用时+1,完成引用后-1任何引用计数为0的对象实例可以被当作垃圾回收执行效率高,程序执行受影响较小无法检测循环引用,会导致内存泄漏可达性分析算法通过判断对象的引用链是否可达GC根对象:1.虚拟机栈

2021-03-16 15:54:01 292

原创 HashMap、HashTable、ConcurrentHashMap你学废了吗

MapMap实现类保存的都是key-value对的key是不可重复的,key的底层是Set集合,Set的一大特性就是具有去重功能value是可重复的,value的底层是Collection集合,是允许重复数据保存的用来标识map里的每项数据HashMap、HashTable、ConcurrentHashMapHashMapHashTableConcurrentHashMap底层JAVA8前:数组+链表JAVA8后:数组+链表+红黑树8前:+分段锁

2021-03-16 15:37:39 135

原创 HTTP、HTTPS、Cookie、Session

HTTP在浏览器地址栏输入URL,按下回车后经历的流程DNS解析:依据URL逐层解析URL中的域名对应的IP浏览器缓存<系统缓存<路由器缓存<IPS服务器缓存<根域名服务器缓存<顶级域名服务器缓存与服务器TCP连接:根据ip地址和目的端口发送HTTP请求:服务器处理请求返回HTTP报文浏览器解析渲染页面、连接结束(四次挥手)HTTP状态码1xx指示信息:请求已接收,继续处理2xx成功:请求已接收,理解、接受3xx重

2021-03-10 20:41:23 401

原创 JVM内存组成、垃圾回收(GC)、对象深浅拷贝,别再说“我不会了”

JVM内存组成、垃圾回收(GC)、对象深浅拷贝,别再说“我不会了”1. JVM内存组成存放共享垃圾回收堆程序运行时创建的对象实例所有线程可访问没有被引用的对象方法区虚拟机加载的类的信息、常量、静态变量、方法声明等所有线程可访问常量、类型卸载的信息不回收常见的静态变量注意:如果静态常量是引用类型,被引用的对象有可能会被回收程序计数器当前线程执行的字节码指令的行号(典型应用分支跳转时记录行号)线程独有虚拟机栈主要为java方法服务线程独有

2021-03-08 22:02:24 179

原创 配置文件.yml与.properties没那么难

配置文件写法1.properties格式: =前面用.分割,=后面写值2.yml格式: 分层级,冒号后需要空格properties与yml可以相互转换:可以使用网页工具:https://toyaml.com/index.html1. 端口变为80812. 为整个项目创建前缀application.propertiesserver.port=8081server.servlet.context-path=/firstapplication.ymlserver:

2021-03-08 01:00:33 126 2

原创 IDEA入门SpringBoot看这一篇就够了,手把手创建工程、开发接口、自定义配置、三层架构实现数据访问

idea快速入门SpringBoot1.创建工程1.1 Spring Initializr选择SDK:(8)选择DefaultNext1.2 Project MetadataGroup:输入域名反写(com.XXX)Artifact:输入项目名(spring-boot-learn)Type:选择(Maven)Language:选择语言(Java)Java Version:选择java版本(8)Descriptio:描述Next1.3 DependenciesSprin

2021-03-08 00:42:06 599

原创 TCP滑动窗口

TCP滑动窗口RTT:发送一个数据包,到收到对应的ACK所花费的时间RTO:TCP发送数据包后会启动重传定时器,RTO就是重传时间RTO不是一个固定的时间配置,是根据RTT计算出来的计算过程参考 https://blog.csdn.net/wdscq1234/article/details/52505191TCP使用滑动窗口做流量控制与乱序重排窗口:通知接收方,发送方还有多少缓冲区可以接受数据流量控制:发送方根据接收方的处理能力来发送数据,不会导致接收方处理不过来Adver

2021-03-05 10:53:42 149 1

原创 TCP vs UDP

TCP vs UDPUDP特点1.面向非连接2.不维护连接状态,支持同时向多个客户端传输相同的消息3.数据包报头只有8个字节,额外开销小4.推出量不受拥挤算法的调节,只受限于数据的生成速率、传输速率、机器性能5.尽最大努力交付。不保证可靠交付,不需要维持复杂的链接状态表6.面向报文,UDP将绝大多数的控制交由上层解决TCP对比UDP面向连接:三次握手无连接:消息多播发布,单点向多点传输信息可靠握手、确认、重传机制可靠性不可靠无法判断是否被接收有序

2021-03-05 09:35:14 67 1

原创 TCP字段详解与三次握手四次挥手过程

TCP三次握手四次挥手TCP数据包术语含义URG为1时,紧急指针有效。表示此报文段中有紧急数据要被优先处理ACK为1时,确认号有效PSH为1时,接收端应用程序应该从TCP缓冲区把数据读走,不用等到缓存填满RST为1时,说明当前tcp出现严重错误,对方要求重新建立连接SYN为1时,请求建立连接,并在其序列号的字段进行序列号的初始值设定。建立连接,设置为1FIN为1时,要求释放连接序号seq占4个字节,用来标记数据段的顺序,TCP把

2021-03-04 20:52:07 249 1

原创 阿里云ECS服务器Centos7安装redis

阿里云ECS服务器Centos7安装redis 并开启远程1.安装gcc依赖yum install -y gcc2.下载并解压安装包前往Redis官网https://redis.io/download下载.tar.gz的安装包以下以redis-6.2.0.tar.gz版本为例wget http://download.redis.io/releases/redis-6.2.0.tar.gztar -zxvf redis-6.2.0.tar.gz3.cd切换到redis解压目录下,执行编

2021-03-02 13:02:46 252

原创 M1 MacBook安装redis

M1 MacBook Pro安装redis1.下载安装包前往Redis官网https://redis.io/download下载.tar.gz的安装包以下以redis-6.2.0.tar.gz为例2.安装(建议:/Library/Redis/ )2.1创建安装文件夹2.1.1方法一:打开终端cd /Librarysudo mkdir Redis输入密码cd Redis2.1.2方法二:图形界面操作右键访达前往文件夹/Library创建Redis文件夹进入Redis文件夹

2021-03-02 12:55:24 9702 8

空空如也

空空如也

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

TA关注的人

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