文章列表

7.6k 7 分钟 lx0815

# CentOS 环境安装 系统:CentOS 7.6 # 1 更新 yum yum update -y # 2 安装 Java 访问 Orcal 官网 Java Downloads | Oracle 下载合适的版本 arch 或 uname -m 命令可查看服务器架构类型 通过 scp 命令将 jdk 上传到 服务器 [12:46]  Shell 95ms ~\Downloads❯ scp -i D:\developmentEnvironment\server\tencentcloud\zrgzs_root.pem...
573 1 分钟 lx0815

# 1 新建指令 在飞书机器人助手中,新建机器人指令。 # 2 设置流程 # 2.1 设置触发器 触发器选择 webhook 复制 webhook 地址到 GitHub 仓库 -> setting -> webhook 参数填写如下内容:{ "ref": "", "after": "", "pusher": { "name": "", "email":...
78 1 分钟 lx0815

本目录是阅读《深入理解 Java 虚拟机》第三版后摘抄的部分知识。具体来说: 这样的是摘抄的 这样的是自己写的理解 好的博客:从零开始学 JVM - 迷途小沙弥的专栏 - 掘金
10k 9 分钟 lx0815

Java 与 C++ 之间有一堵由内存动态分配和垃圾收集技术所围成的高墙,墙外面的人想进去,墙里面的人却想出来。 # 3.1 概述 第 2 章介绍了 Java 内存运行时区域的各个部分,其中程序计数器、虚拟机栈、本地方法栈 3...
11k 10 分钟 lx0815

# 2.2 运行时数据区 # 2.2.1 程序计数器 是当前线程所执行的字节码的行号指示器,字节码解释器通过改变这个计数器的值来选取下一条需要执行的字节码指令,它是程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。 记录当前代码跑到哪里了 此内存区域是唯一一个在《Java 虚拟机规范》中没有规定任何 OutOfMemoryError 情况的区域。 # 2.2.2 虚拟机栈 生命周期与线程相同 启动一个新线程的时候会创建一个虚拟机栈,同时关闭一个线程也将销毁这个虚拟机栈 虚拟机栈描述的是 Java...
2.3k 2 分钟 lx0815

” 本贴一问一答,以问促学,对答案有疑问建议新建问题. # 1. 问:为何 JWT 可以防止被篡改? JSON Web Token 由三部分组成,这些部分由点 (.) 分隔,分别是:头 (Header)、有效载荷 (Playload)、签名 (Signature); Header:对 TokenUtil.header(含有加密算法)进行 Base64Url 编码得到 jwt 的第一部分; Playload:存放有效信息的地方,Base64Url 编码得到第二部分; Signature:是整个数据的认证信息。一般根据前两步的数据,然后通过 header 中声明的加密方式结合密钥 secret...
882 1 分钟 lx0815

关于原码反码补码,首先,明确三码之间的关系: 正数三码合一 负数三码的关系如下: 原 ↔ 反 (高位符号位不变) 原码 = ~ 反码 反码 = ~ 原码 反 ↔ 补 补码 = 反码 + 1 反码 = 补码 - 1 原 ↔ 补 原码 = ~ 反码 = ~ (补码 - 1) 补码 = 反码 + 1 = ~ 原码 + 1 例:3 的原码: 0000 00113 的反码: 0000 00113 的补码: 0000 0011-3 的原码: 1000 0011, 即将 3 的原码最高位换成 1 以表示负数 - 3 的反码: 1111 1100, 注意符号位不变 - 3 的补码: 1111...
193 1 分钟 lx0815

给你一个数组 arr ,取 [l, r] 范围内的中间值,很简单吧,直接 arr[(l + r) / 2] ?大错特错,这里的 l + r 具有潜在的安全隐患,即可能会在某些情况下溢出,即 l + r > Integer.MAX_VALUE # 方法一:l + (r - l) / 2 这样可以使用 r - l 来降低操作数的大小,避免了出现溢出问题 # 方法二:l + ((r - l) >> 1) 相较于法一主要是使用了位运算符,有助于提高运算速度