简介在不同的前端项目中,Node版本之间的有时候会不兼容,然后需要对相对应的项目下载不同的Node版本,这很繁琐,而且很麻烦
然后,我找到了 nvm 这个专门为 Node 版本控制而生的版本控制工具,这款软件轻量而且强大
地址中文网:https://nvm.uihtm.com
GitHub:https://github.com/coreybutler/nvm-windows/releases
使用安装好软件之后,打开黑窗口然后输入 mvn -v 看看能不能输出版本号,有输出代表安装成功
然后进行切换镜像源,执行以下其中一组命令
阿里:
12nvm npm_mirror https://npmmirror.com/mirrors/npm/nvm node_mirror https://npmmirror.com/mirrors/node/
腾讯:
12nvm npm_mirror http://mirrors.cloud.tencent.com/npm/nvm node_mirror http://mirrors.cloud.tencent.com/nodejs-release/
命 ...
简介线程池本质上就是一组线程的集合,当使用线程时会从集合中取出一个线程,当时用完后,该线程会重新回到集合中
参数Java中创建线程池:
1new ThreadPoolExecutor(10, 200, 1000, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(200))
corePoolSize(核心线程数):
这是线程池中会始终保持活动的线程数,即使它们目前是空闲的。这些线程不会因为执行完任务后处于空闲状态而被终止,除非设置了allowCoreThreadTimeOut为true。
maximumPoolSize(最大线程数):
这是线程池能够容纳同时执行的最大线程数。当活动线程数达到这个值后,新来的任务将会被阻塞或拒绝,具体行为取决于所使用的阻塞队列和拒绝策略。
keepAliveTime(空闲线程存活时间):
如果线程池中的线程数量超过corePoolSize,那么多余的空闲线程在等待新任务到达的最长时间。超过这个时间后,多余的空闲线程会被终止。这个参数对核心线程不生效,除非设置了allowCoreTh ...
介绍使用该工具类时需要到123云盘开放平台申请 CLIENT_ID 和 CLIENT_SECRET
这是对123云盘的所有API链接进行封装,使用时需导入一下Maven坐标吗,主要用于配合解析返回数据
12345<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.16.0</version></dependency>
使用时会生成一个配置 config/123pan.json 这里面存放着 Access_Token 和它的过期时间基本上所有的请求都需要携带 Access_Token
Access_Token 的获取会在文件加载时进行判断获取,也可以使用 OneTwoThreeCloudDisk.getAccessToken() 进行手动获取,每次请求API时会先判断 Access_Token 是否可用
...
介绍滑动窗口法,也叫尺取法,可以用来解决一些查找满足一定条件的连续区间的性质的问题。
思想就按照查找不含有重复字符的最长子串的长度来举例(abcabcbb)
现有两个变量用来当左边和右边的下标(这里以括号表示),满足要求的时候,右括号往右走,如下所示
(a) b c a b c b b –> (a b) c a b c b b –> (a b c) a b c b b –> (a b c a) b c b b
右括号一直走,直到其中包含重复字符也就是两个a,这是右括号停止走并记录此时的最大值也就是3(abc)
不满足的时候左括号开始走
(a b c a) b c b b –> a (b c a) b c b b
此时可以看到括号里面的内容是只有 bca 的,那么满足条件右括号开始走
a (b c a) b c b b –> a (b c a b) c b b
可以看到里面又有重复字符了,此时左括号开始走,并记录最大值,还是3(bca)
a (b c a b) c b b –> a b (c a b) c b b 左
a ...
成品
* {
padding: 0;
margin: 0;
box-sizing: border-box;
}
#calendar {
width: 300px;
background-color: rgb(255, 251, 240);
border-radius: 10px;
margin: auto;
}
#yue {
border-radius: 10px 10px 0 0;
width: 100%;
height: 140px;
margin-bottom: 10px;
background-image: url(https://img.zcool.cn/community/0112bb5d77c95ea ...
Cloudflared Zero TrustZero Trust是Cloudflare公司推出的一项企业级虚拟网关服务,官方对其介绍如下:
Cloudflare Zero Trust是一个安全框架,旨在通过验证和保护所有的网络访问(无论用户或地点)来保护组织免受网络威胁。该框架基于 “不信任任何人 “的原则,这意味着所有访问请求在被批准之前必须经过验证和授权。
Zero Trust “旨在提供一种全面的安全方法,涵盖一个组织的网络和基础设施的所有方面。这包括用户认证、设备安全、网络分段和应用安全。
Zero Trust的主要好处之一是它能够提供细化的访问控制,使企业能够根据用户角色和权限限制对敏感资源的访问。这可以通过最小化攻击面和限制任何潜在漏洞的影响来帮助防止数据泄露和其他安全事件。
Cloudflare Zero Trust是一项基于云的服务,可以很容易地与组织的现有安全基础设施集成。它的设计具有可扩展性和灵活性,允许企业定制框架,以满足其特定需求和要求。
(通过DeepL翻译)
本文仅使用其中的tunnel功能,对其余功能不做赘述
准备工作
一个域名(通过阿里云等购买然后解 ...
简介是指从软件或者硬件上实现多个线程并发执行的技术
具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能
简单来说就比如你正在听歌,但是你想要在听歌的同时发布评论并且听歌不受影响,这就是多线程了,一共两个线程,一条线程供你听歌不干其他的事情就光顾着你听歌就行,而另一条线程则是供你发布评论,两条线程同时工作,但又互不影响
概念并发和并行
并行:在同一时刻,有多个指令在多个CPU上同时执行
一共三件事情,同时执行是为并行
并发:在同一时刻,有多个指令在单个CPU上交替执行
还是三个事情,在第一个事情上搞一会,然后在第二个事情上在在搞一会,然后跑到第三个事情上,来回在这三个事情上搞是为并发
进程和线程
进程:正在运行的软件
独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位
动态性:进程的实质是程序的一次执行过程,进程是动态产生的,动态消亡的
并发性:任何进程都可以和其他的进程一起并发执行
线程:是进程中的单个顺序控制流,是一条执行的路径
单线程:一个进程如果只有一条执行的路径,则被称为单线程程序
多线程:一个进程如果有多个 ...
读123456789101112131415161718String readJson(String Cf) { String json = null; try { FileReader f = new FileReader(Cf); Reader reader = new InputStreamReader(new FileInputStream(Cf)); int ch = 0; StringBuffer sb = new StringBuffer(); while ((ch = reader.read()) != -1) { sb.append((char) ch); } f.close(); reader.close(); json = sb.toString(); } catch (IOException e) { System.out.p ...
介绍FastJson是阿里巴巴开源的json解析库,它可以解析json格式的字符串
具有特点
速度快
使用广泛
测试完备
使用简单
功能完备
Maven FatsJson如果是使用的Maven做的项目那么只需要在里面的pom.xml文件里面添加如下代码
12345<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.83</version></dependency>
在刷新一下Maven即可
如果添加代码dependency爆红的话只需要在外面加上一层dependencies标签
123456789<dependencies> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjs ...
java
未读Maven是什么Maven是一款服务于Java平台的自动化构建工具。Maven 作为 Java 项目管理工具,它不仅可以用作包管理,还有许多的插件,可以支持整个项目的开发、打包、测试及部署等一系列行为
因为本来就是使用java写的所以电脑上一定要有jdk这个东西
不过我想都来下载Maven了应该不会还没有装java吧
Maven下载和安装去官网上下载
引用站外地址
Maven
https://maven.apache.org/download.cgi
往下翻翻到图片中的位置,然后找到图片中红框中的位置点击下载(版本可能不一样)
下载完成之后找个位置解压文件并记下解压的位置
Maven配置右键此电脑点击属性找到高级系统设置在高级一栏的底下找到环境变量找到系统变量在里面新建
变量名填:MAVEN_HOME
变量值:填文件解压的位置到bin目录上层位置
意思就是bin目录在这个文件夹里面 ...