自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【笔记】Vim-plug 插件管理器离线安装插件

这是 Vim 的插件管理器,除了 Vim-Plug 以外还有 Vundle,NeoBundle 等其他 Vim 插件管理器,选择 Vim-Plug 的原因是它足够小巧,简单。然后将代码解压后移动到指定目录即可,这里的目录我们可以自己指定,比如用户目录下。注意这里的配置,变成了本地路径,这样的话 Vim-Plug 就会直接从本地目录加载插件了,而不需要通过 PlugInstall 执行安装操作。Vim-Plug 在正常情况下,我们需要在 begin 和 end 之间指定我们要安装的插件,如当我们想要安装。

2024-05-21 22:20:09 179

原创 [笔记] Win11 Microsoft Store App 离线下载

Micorsoft Store 中的离线安装包一般后缀为 AppxBundle 和 Appx。在一些环境下 Microsoft Store 下载速度缓慢,或者需要账号登录才能安装的场景,可以通过找到对应的离线安装包的形式进行安装。选择后缀为 appx 或者 appxbundle 的文件链接点击下载即可,下载完成后双击即可完成安装。

2024-05-07 22:53:21 435

原创 Windows 系统上实现 sshpass 方案

sshpass 是 Linux 上的一个免输入密码通过 ssh 登录的方案,可以通过在命令行中指定密码,无需交互的方式完成一些自动化的动作。但是在 Windows 系统中并没有直接提供相关的支持。本篇文章针对这个思路探讨一下其他实现方式。

2024-04-27 22:32:58 1016 1

原创 Git 如何合并多个连续的提交

我平常的编程喜欢是写一段代码就提交一次,本地一般不攒代码,生怕本地有什么闪失导致白干。没错,由于频繁的提交,又不好好写message导致提交中出现多个相同的 message,同时变更分散在不同的提交中,回溯也十分的不方便。针对这种场景,Git 提供了能力支持,可以将多个提交合并为一个提交,使得提交日志变得清晰可读。此时可以看到提交记录中有多个提交。

2024-03-31 00:09:30 711

原创 [笔记] BAD PASSWORD ,linux 修改密码

随着人们对安全意识的逐渐提升,Linux 中的密码策略也变得越来越复杂,导致使用 passwd 改密时需要花费大量时间来应付密码策略。这里回顾一下这艰难的改密之路。

2024-03-30 22:29:42 770

原创 JavaScript 使用 Promise 实现 sleep 休眠

以下为代码实现,该代码实现了每隔1秒打印一次当前时间,总共打印5次的功能这里使用了 Promise 异步操作功能,在 Promise 中调用了 setTimeout 方法,并在指定时间后执行回调函数完成 Promise。在外层通过 await 关键字等待 Promise 的完成。这样就实现了一个 sleep 函数了。

2024-03-20 22:45:35 309 1

原创 [笔记] Docker 安装脚本分析

选项时,系统会模拟执行命令或操作,显示将要执行的步骤和可能的结果,但不会真正执行这些步骤。这对于验证复杂的操作或检查潜在的问题非常有用,以便在实际操作之前进行调试或预览。选项运行删除命令,系统会显示将要删除的文件和目录列表,但不会实际删除它们。这样,你可以先检查列表,确保没有意外的文件将被删除,然后再决定是否执行真正的删除操作。是一个常见的命令行参数或选项,用于执行模拟运行而不实际执行任何操作。例如,假设你要删除一个目录及其所有子目录和文件,但你不确定删除操作是否会产生意外结果。

2024-03-14 00:24:15 466

原创 [笔记] 使用 Java Swing 实现一个简单的窗口

Java Swing 是一个用于构建图形用户界面(GUI)的Java库,它提供了丰富的组件和工具,用于创建交互式的桌面应用程序。Swing 是 Java Foundation Classes(JFC)的一部分,它是 Java 平台的一种标准用户界面工具包。Swing 提供了丰富的组件,包括按钮、标签、文本框、列表、表格等,以及布局管理器和事件处理机制等工具,使开发人员能够轻松创建复杂的用户界面。Swing 还支持可定制的外观和主题,开发人员可以根据需要自定义界面的外观和风格。

2024-03-04 00:02:02 660

原创 [笔记] wsl 禁用配置 win系统环境变量+代理

然后退出wsl,并且执行关闭正在运行的 wsl,执行命令。进入用户目录,创建配置文件。最后重新进入wsl 即可。

2024-03-02 23:10:06 593

原创 [笔记] 使用 qemu 创建虚拟磁盘并安装 grub

nbd全称 Net Block Device网络块设备,是 Linux 中的一个模块用于加载网络上的块设备,由于使用到了网络,因此拥有较大的兼容性,同时由于通过网络进行传输,因此磁盘传输速度受限于网络带宽.这里主要用到该模块加载 qemu 的虚拟磁盘文件.# 创建一块大小为 128MB 的虚拟磁盘文件 qemu-img create -f qcow2 hd.img 128Mmodprobe nbd max_part = 8 # max_part=8 指定虚拟设备数量这里指定为 8这将将。

2024-01-03 23:42:34 1350

原创 [笔记] wsl2 下使用 qemu/grub 模拟系统启动(多分区)

然后使用losetup -f将其关联为本地回环设备使用系统工具 fdisk 为虚拟硬盘创建分区系统,这里选择使用 GPT 分区系统,并创建了两块分区.这里需要注意不要配置为 MBR 分区系统,会导致系统无法启动,grub-install 目前没找到如何设置支持 MBR 分区系统.在创建完成后通过kpartx -av然后在 /dev/mapper 目录下可以看到刚刚识别的分区信息现在我们可以为这两个分区进行格式化,第一个分区被我用于启动分区,通常文件系统为 fat32 类型的。

2023-12-12 23:32:44 1384

原创 [笔记] wsl 下使用 qemu/grub 模拟系统启动(单分区)

qemu 是一款十分优秀的系统模拟器,可以用于模拟各种CPU架构硬件。你可以在 x86平台上模拟出 arm 架构的 CPU并在其上运行程序,也可以反过来。总而言之,通过 qemu 可以忽略平台间的架构差异,完成硬件模拟。grub 是一个开源的系统启动器,用于对计算机进行初始化并引导至操作系统。

2023-12-11 22:25:24 1213

原创 [笔记] 使用 xshell 记录日志

平常会使用xshell登录远程系统,在一些场景下,由于远端节点不支持下载,因此无法下载日志,此时可以通过 xshell 自带的日志功能将远端节点的日志内容导出.

2023-11-29 23:39:06 1295

原创 linux ld 链接器学习笔记

这里的汇编语法时 AT&T语法,是gcc原生支持的语法,底层使用 gas(gnu assembler) 完成汇编,相较于 Intel x86语法, AT&T 语法要更加古老,因此大多数人更加偏向于使用 Intel 的语法. nasm 编译器支持x86语法.自从2.10版本,Intel语法可以通过使用.intel_syntax指令使用。

2023-11-22 22:15:43 757

原创 [教程]使用 Git 克隆指定分支

Git 是我们开发过程中经常使用到的版本管理工具,在平常情况下我们从远程克隆的时候会将整个库克隆下来,这会包括整个版本库的历史提交记录和远程库里的所有分支。但在一些情况下,比如我们并不需要查看历史提交记录而只是希望能够获取到最新的代码;或者我们只希望克隆某个指定分支时,而不是克隆全部的远程分支,此时我们就可以用到一些选项来减少我们的仓库的体积从而提高生产效率。

2023-03-03 19:44:10 18763 1

原创 基于图片识别的 UI 自动化测试工具 SikuliX

SikuliX 是一款开源的 GUI自动化测试工具,它的前身是 Sikuli(上帝之眼).不同于传统的 UI自动化测试工具, SikuliX 在执行鼠标键盘自动化时是基于图片识别的,也就是说我们的脚本逻辑可以由"鼠标移动到坐标 x,y"变成"鼠标移动到指定图案上"

2023-01-13 16:13:30 2929

原创 [笔记]在 PowerShell 中实现 tail -f 命令追踪日志

但由于现在的开发环境是 Window 10 ,并没有 tail 命令,经过查找,发现可以在 PowerShell 下使用。在开发过程中经常会遇到在 Linux 下使用。命令实时追踪日志输出。

2022-11-11 10:52:27 3517

原创 [笔记]RestController统一返回结果格式

Spring MVC 统一返回结果格式的一种封装处理办法

2022-10-28 14:40:47 1088

原创 [笔记]MySQL 删除重复数据

MySQL 删除重复行

2022-10-24 17:03:33 4291

原创 [笔记]MySQL查看事务信息

笔记记录了如何使用 SQL命令查看事务信息

2022-10-10 16:32:18 6137

原创 [笔记]事务与2PC

笔记描述了什么事务已经对应的二阶段提交场景

2022-10-10 14:23:11 147

原创 [笔记]CSS实现页面翻转功能

【代码】[笔记]CSS实现页面翻转功能。

2022-09-19 22:39:21 488

原创 [笔记]MySQL 插入导致死锁

线上遇到的 MySQL 插入导致死锁,问题排查.

2022-09-13 13:38:12 1877

原创 [笔记]SSH 端口转发

ssh 拥有很强大的能力,因为在服务器运维中一直在使用 ssh ,因此探讨 ssh 的功能能够在日常开发过程中受益颇多,这里描述下 ssh 的三种端口转发功能。灵活使用可以大大简化我们的开发过程。

2022-09-09 14:09:58 3979

原创 [笔记]JavaScript 实现按钮拖拽效果

笔记,JavaScript 实现按钮拖拽的效果

2022-09-06 17:09:53 694

原创 [笔记]使用 Arthas 获取Class 对象参数

class对象->@xxxClass@class 相当于一个静态的变量ognl 命令默认的类加载器为系统类加载器(SystemClassLoader) 注意使用时使用 -c 命令指定下类加载器。

2022-09-05 18:18:04 1802

原创 [折腾]使用SSH服务实现一个socks5代理服务器

其实使用的是ssh的动态转发功能。指定监听的端口,会在本地监听该端口,并将请求到该端口流量基于 SOCKS5 协议转发到远程主机上,其中可以不填,当不写或者为*时表示监听全部地址。-D *:8081,-D 8081,,不执行远程命令,仅仅用于端口转发-T不为该命令分配伪终端通过上面的命令,我们可以通过本地12345代理,将本地请求csdn的流量转发给远程主机,由远程主机帮我们执行请求后将结果返回给我们。...

2022-08-31 15:21:09 3941

原创 [笔记]设置私有 Git 服务器

如何在 Linux 上设置私有 Git 服务器。

2022-08-24 11:23:25 356

原创 MySQL大数据量查询方案

在业务开发过程中,有时会遇到大数据量查询的情况,如果将一次性加载全部查询结果的话会导致内存量暴增,甚至出现OOM异常,为了解决这种场景,MySQL中提供了针对此类场景解决方案,本文针对此类场景进行了研究..........

2022-08-18 18:31:57 6521

原创 SpringBoot 关于异步与事务一起使用的问题

Spring 事务和异步在一起使用时,如果不做处理的话会遇到事务未提交而导致异步方法执行时获取不到未提交的事务的数据从而执行异常,本文描述了一个类似的场景本针对该场景如何处理。

2022-08-13 18:27:18 6199 4

原创 FastJson 处理泛型

FastJson 处理泛型的逻辑

2022-07-25 14:34:47 6766 1

原创 Arthas watch 命令查看数组中对象的属性

arthas查看数组中对象的属性,ognl表达式映射,arthas 集合映射

2022-07-15 17:42:38 4377

原创 BCryptPasswordEncoder 加密算法解析

Spring Security 中提供了 用于用户密码的加密和验证,这里讲解一下该 的实现逻辑.首先 使用了 算法来对密码实现加密和验证

2022-06-13 15:33:46 9640 7

原创 Java 对象结构之 markword

Java 对象结构可以帮助我们认识到 Java 底层的工作原理,本片文章介绍了在不同代码的环境下对象头 markword 发生的变化

2022-06-09 16:19:08 5143 6

原创 LRU 与 LFU ,傻傻分不清楚

LRU (Least Recently Used) 最近最少使用,如果数据最近被访问过,那么将来被访问的几率也更高。LFU (Least Frequently Used) 最近最少次数使用,如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小。LRU缓存像浏览器的缓存策略、memcached的缓存策略都是使用LRU这个算法,LRU算法会将近期最不会访问的数据淘汰掉。LRU如此流行的原因是实现比较简单,而且对于实际问题也很实用,良好的运行时性能,命中率较高。实现新.

2022-05-20 15:49:34 1268

原创 Win10 下启动 RocketMQ

Win10 下启动 RocketMQ参考文档1. 设置环境变量配置 RocketMQ 启动需要配置两个环境变量# 你的 RocketMQ 文件根目录ROCKETMQ_HOME="D:\rocketmq"# 命名服务器本地监听地址NAMESRV_ADDR="localhost:9876"PowerShell 下配置环境变量的方式如下:$Env:ROCKETMQ_HOME="D:\rocketmq"$Env:NAMESRV_ADDR="localhost:9876"在配置好环境变量后就

2022-05-16 16:22:07 1201

原创 SpringBoot 装配 List 时遇到的一个问题

我们知道,Spring在遇到类型为 List、Map 之类的属性时,会根据类型收集容器内的所有Bean然后进行注入:@Servicepublic class MainServiceImpl implement MainService{ // 当装配对象类型为 List 时,会根据泛型收集容器内的所有bean,并注入 @Autowired List<MainRepository> repository;}今天遇到一位大牛写的代码,写了这样一段自己注入自己类型的代码:@Pri

2022-05-12 11:46:49 399

原创 Win 开机自动启动 WSL 服务

最近研究了一下如何让 Win 开机自动启动 WSL 服务,避免每次想要打开 wsl 时还需要等一下.步骤Win+R打开运行窗口,输入 shell:startup打开启动文件夹.在文件夹中新建一个文本文档,并且编写下面内容:CreateObject("Wscript.Shell").run "wsl",vbhide保存后重命名文件为 init.vbs至此 Win 开机自动启动 WSL 就已经设置好了,系统会在开机时自动为你新建一个 wsl 终端.参数设置使用上面脚本自动启动 w

2022-05-11 14:46:12 7270

原创 SpringBoot 构建 WebSocket

项目中有需要使用到 WebSocket,这里记录一下:添加依赖坐标,除了基本的 spring-boot-starter-web依赖之外,还需要添加一个 websocket相关的依赖:<groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId>添加 Configurer配置类,将 websocket 访问路径入口与 ha

2022-05-07 18:46:49 1459

原创 nodejs 国内镜像源

推荐使用阿里的镜像源通过 config 命令配置:npm config set registry https://registry.npmmirror.com在安装模块的时候指定镜像源:# 使用npmmirror镜像源 安装 loaddash 模块npm install loaddash --registry https://registry.npmmirror.com编辑 ~/.npmrc加入下面内容registry=https://registry.npmmirror.co

2022-05-07 16:14:30 9323

空空如也

空空如也

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

TA关注的人

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