PicGo搭建白嫖Github的图床
PicGo搭建白嫖Github的图床
会尽快与博客同步
B站专栏👉
VS Code插件推荐----Markdown插件代替Typora
Typora收费了,三台设备89元,但是还是可以用老版本,就是没有免费更新了
插件推荐插件名:Markdown Preview Enhanced
支持切换皮肤,在浏览器中打开,支持导出PDF,JPG等格式的文件
👉VS Code插件地址
👉官方文档地址-简中
Linux项目部署常用命令
Linux 查看端口占用情况1lsof -i:端口号
脱离终端的方式在后台运行shell命令1nohup 你的shell命令 &
常用任务管理命令123456789jobs //查看任务,返回任务编号n和进程号bg %n //将编号为n的任务转后台运行fg %n //将编号为n的任务转前台运行ctrl+z //挂起当前任务ctrl+c //结束当前任务
算法之旅----选择排序
选择排序内存的工作原理
把内存比喻成一个寄存处的一个柜子,柜子有很多抽屉,每个抽屉可放一样东西,你有两样东西要寄存,因此要了两个抽屉。
你将两样东西存放在这里,这就是大致的计算机内存的工作原理,计算机就像是很多抽屉的集合体,每个抽屉都有地址。
需要将数据存储到内存时,你请求计算机提供存储空间,计算机给你一个存储地址。
需要存多项数据时,有两种基本方式——数组和链表。
数组和链表有时候,需要在内存中储存一系列元素。
应该是使用数组还是链表呢?
数组的元素带编号,编号从0开始而不是从1开始。
对于访问,数组在物理内存上是连续存储的,硬件上支持“随机访问”
链表没有下标的概念,只能通过头节点指针,从每一个节点,依次往下找,因为下个节点的位置信息只能通过上个节点知晓
对于增加,因为数组在内存中是连续存储的,要想在某个节点之前增加,且保持增加后数组的线性与完整性,必须要把此节点往后的元素依次后移。
而链表却为其他元素着想多了。由上图可知,链表中只需要改变节点中的“指针”,就可以实现增加。自身在内存中所占据的位置不变,只是这个节点所占据的这块内存中数据(指针)改变了,相对于数组“牵一发而动全身” ...
Github访问问题
Github访问问题
最近GitHub一直抽风,在学校大部分时间根本访问不了,查找问题原因,怀疑是DNS污染
在Gitee找到个项目可以解决
项目地址
里面保存有GitHub真实的地址,修改系统host文件即可
1234567891011121314151617181920212223242526199.232.69.194 github.global.ssl.fastly.net140.82.112.4 www.github.com185.199.108.153 assets-cdn.github.com185.199.109.153 assets-cdn.github.com185.199.110.153 assets-cdn.github.com185.199.111.153 assets-cdn.github.com185.199.108.153 documentcloud.github.com185.199.109.153 documentcloud.github.com185.199.110.153 documentcloud.github.com185.199.111 ...
同时将代码同步到GitHub和Gitee
同时将代码同步到GitHub和Gitee
最近想把项目同时在两个平台更新,就开始摸索怎么将代码同步到两个平台
首先配置本地的ssh密钥
打开CMD
输入命令ssh-keygen -t rsa生成公钥和私钥
打开公钥和私钥的存放地点Windows系统默认在
1C:\Users\<用户名>\.ssh
其中id_rsa.pub是公钥
用记事本或者vscode打开后全部复制
打开Gitee和Github的SSH公钥(在个人设置里面)复制并保存
乌龟git(TortoiseGit)相关设置如果你使用的是乌龟git可视化操作需要配置乌龟git的默认ssh
JWT原理
JWTJWT原理服务器认证以后会生产一个json对象,服务器完全只靠这个json对象校验用户身份,为了防止json串被篡改,服务器在生成这个json对象时会进行签名
也就是说服务器端不保存这个数据,每次客户端请求时需要带着这个json对象
JWT数据结构形如 xxxx.yyy.zzz 由三部分组成,每部分用英文句号连接
JWT的三个部分:header 头部payload 负载signature 签名
也就是 Header.Payload.Signature
1、Header 头部是一个JSON 对象, 描述JWT的元数据,形如:{"alg": "HS256", "typ": "JWT"}
alg属性表示签名的算法(algorithm),默认是 HMAC SHA256
typ属性表示这个令牌的类型(type),JWT 令牌统一写为JWT
2、payload 负载是一个JSON 对象, 用来存放实际需要传递的数据,形如:{"sub": "1234567 ...
Springboot实现邮件发送
Springboot实现邮件发送1.项目的创建1.1创建一个Springboot项目核心pom.xml的配置
12345<!--邮件服务--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency>
1.2配置邮箱服务配置文件在application.yml里面配置如下
下面以QQ邮箱为例:
1234567891011121314151617spring:# 邮件服务 mail: host: smtp.qq.com username: <qq邮箱账户> password: <smtp服务的授权码> # 端口号465或587 port: 587 # 默认的邮件编码为UTF-8 ...
Docker
Docker安装Docker官方文档
CentOS下安装更新yum包
1sudo yum update
安装需要的软件包1yum install -y yum-utils device-mapper-persistent-data lvm2
卸载旧版本12345678$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
yum安装1sudo yum install -y yum-utils
配置镜像加速12345678sudo mkdir -p /etc/dockersudo tee ...
算法之旅----二分查找
算法之旅—-二分查找介绍二分查找二分查找是一种算法,其输入的是一个有序的元素列表。如果要查找的元素包含在列表内,二分查找就返回其位置;否则返回null
案例
随便想一个1-100的有序数组
你的目标是以最少的次数猜到这个数字,每次猜测后,会提示你小了,大了或对了。
假设你从1开始依次往上猜,这是简单查找,简单来说又叫傻找。每次猜测只能排除一个数字。
如果我给出的数字是100,你需要猜测100次,效率极低
更佳的查找方式如果我们取中从50开始,提示大了,那将排除一半的数字。
使用二分查找时,你猜测的是中间的数字,从而每次都将余下的数字排除一半!
代码(Java)1234567891011121314151617181920212223242526272829303132333435363738public class BinarySearch { //一个按顺序的数组 static int[] a = {1,2,3,4,5,6}; public static void main(String[] args) { Sy ...