自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 WSL 2 Oracle Linux 9.1 安装配置

WSL 2 搭建 Linux 初始环境

2024-07-22 00:08:31 228

原创 VMware 虚拟机 Windows 系统卡顿解决

虚拟机系统卡顿的大部分原因是设置不当导致

2024-07-14 01:09:04 220

原创 【Git】取消追踪多个文件或目录

将这些文件添加到 .gitignore 文件中,这样 Git 就不会继续追踪这些文件。编辑 .gitignore 文件,添加要忽略的文件或目录。取消追踪并保留文件(仅从暂存区移除),通过 --cached 参数。取消追踪并删除文件(同时从暂存区和工作区移除),通过 --f 参数。使用 git rm 命令来从暂存区移除这些文件。

2024-07-06 18:48:05 327

原创 中文英文数字三者之间批量添加空格,使用正则表达式

有时候,如果中文、数字、英文之间没有明确的分隔符,可能会导致一些语义上的混淆,甚至会给读者造成误解。在中文、数字、英文之间加入空格是符合排版规范的一部分,它使得文本看起来更加整洁、规范,给人以良好的印象。在一段文字中,中文、数字、英文没有明确的间隔会让读者感到困惑,难以区分它们的边界。虽然在传统的书写习惯中,我们可能会忽略它们之间的空格,但实际上,给中文、数字、英文之间加一个空格有着重要的意义。利用正则表达式,我们可以快速、批量地在中文、英文、数字之间添加空格,从而改善文本的排版效果。

2024-03-29 06:37:46 519 1

原创 Windows 定时关机脚本

文件名:query_next_poweroff.bat。作用:查询下一次执行时间。作用:创建关机定时任务。作用:删除关机定时任务。

2024-02-03 02:00:48 1272

原创 【Git】修改提交信息(单次、批量)

修改最近一次提交信息,可以用,也可以用,推荐使用前者,更方便修改某次提交信息,用,pick 改为 e,再通过完成后续操作批量修改提交信息,用,多个 pick 改为 e,再通过完成多个后续操作还可用编写脚本完成批量修改。

2023-11-27 00:59:56 2108 1

原创 【VMware】CentOS 设置静态IP(Windows 宿主机)

宿主机:Win11 22H2虚拟机:CentOS-Stream-9-20230612.0 (Minimal)

2023-08-25 02:48:25 887

原创 【Java】小文件下载的多种方法

在常规的 HTTP 应答中,Content-Disposition 响应标头指示回复的内容该以何种形式展示,是以内联的形式(即网页或者页面的一部分),还是以附件的形式下载并保存到本地。在 multipart/form-data 类型的应答消息体中,Content-Disposition 通用标头可以被用在 multipart 消息体的子部分中,用来给出其对应字段的相关信息。各个子部分由在 Content-Type 中定义的边界(boundary)分隔。用在消息体自身则无实际意义。

2023-07-22 09:51:54 540 1

原创 【Spring MVC】小文件上传的多种方法

Spring MVC 提供了多种方法来处理文件上传,开发者可以根据项目需求和性能考虑选择适合的方法。对于小文件上传,使用 MultipartFile 接口是简单有效的选择。无论选择哪种方法,都应该注意文件上传过程中的安全性和性能,避免潜在的漏洞和性能问题。合理设置文件大小限制,处理异常情况,以及对文件上传进行必要的验证和授权,都是保障文件上传功能正常运作的重要因素。

2023-07-22 07:04:40 468

原创 【Java SE】判断两个文件内容是否相同的多种方法

计算文件的哈希值(如 MD5、SHA-256 等),然后比较两个文件的哈希值。如果哈希值相同,则可以认为文件内容相同。这种方法适用于大文件,因为只需要比较哈希值而不是整个文件内容。Files;Path;

2023-07-14 10:25:49 4260

原创 【AI 绘图】Stable Diffusion WebUI 本地安装教程(Windows,兼容 NVIDIA、AMD 显卡)

Stable Diffusion 是 2022 年发布的深度学习文本到图像生成模型。它主要用于根据文本的描述产生详细图像,尽管它也可以应用于其他任务,如内补绘制、外补绘制,以及在提示词指导下产生图生图的翻译。由 AUTOMATIC1111 创作的基于 Stable Diffusion AI 模型的 AI 绘画开源软件(Web 界面)软件界面只要给定一组描述文本,AI就会开始绘图(准确的说是「算图」或「生图」);亦能模仿现有的图片,生成另一张图片。

2023-07-10 05:06:23 3233 1

原创 【Maven】修改编码格式的多种方式

为什么修改?中文操作系统编码为GBK,Maven安装后会使用系统默认编码,编译含有中文字符的UTF-8格式源码文件时就出现编码不匹配的问题场景:使用Maven编译项目,虽然提示编译成功,但会有以下警告为了避免产生不可预料的问题,建议统一改为UTF-8。

2023-04-21 16:34:08 3829 10

原创 Win7 无法安装 VMware Tools 解决方法

win7版本:cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408_2(iso大小3.18 GB)vmware workstation版本:17.xvmware创建的winxp、win10、win11都能成功安装vmware tools,唯独win7不行上述winxp、win7镜像从msdn渠道下载,因为目前官网已经关闭了这些iso下载入口目前,win10、11镜像文件仍可从官网下载。

2023-04-13 22:44:10 4439 6

原创 Windows 下修改 MS Office 默认安装路径的方法

方法:在运行安装程序前修改注册表,然后再运行安装程序(若已安装则无法修改,需要卸载重装),若下载后运行安装程序则默认安装到 C:\Program Files下。是固定的,否则打不开软件,提示 “操作系统当前配置不能运行此程序”推荐一个解决方案:Office Tool Plus。把上面这三项注册表的值改为office安装路径,进入目录后,将以下三项注册表进行备份导出。Win + R 输入 regeidt。

2023-04-10 14:46:15 2390 3

原创 Chocolatey 包管理器安装配置

改变chocolatey的默认安装位置(不是包的位置)方法一:修改环境变量ChocolateyInstall。方法二:执行choco install命令时指定参数。下载安装,powershell执行。开启这个可以免去频繁确认信息。

2023-04-10 13:28:27 1513

原创 【Java】静态代码块、构造代码块、构造方法的执行顺序

优先级:父类静态代码块 > 子类静态代码块 > 父类构造代码块 > 父类构造方法 > 子类构造代码块 > 子类构造方法。优先级:静态代码块 > 构造代码块 > 构造方法。

2023-04-10 00:10:22 1025

原创 【Spring Data】JPA 审计功能的使用

文字解释:透明地跟踪谁创建或更改了实体以及创建、更改发生的时间。// 模拟场景:修改文章标题和内容 Article article = new Article();// 手动设置修改日期 article . setModifyDate(LocalDateTime . now());// 手动设置修改人员,此处按用户名 article . setModifyOperator("jack");启用审计功能后,代码将减少2行。

2023-04-07 18:57:57 2028 4

原创 【Spring Boot】自定义 Banner

启动 Spring Boot 时,几乎总是能在控制台上方看到如下横幅,这个也叫字符画、英文ASCII艺术字。

2023-04-07 17:23:15 4957 1

原创 Chrome 常用快捷键

Chrome 常用快捷键快捷键功能Ctrl + F查找Ctrl + T打开新的标签页Ctrl + W关闭当前页面Ctrl + Shift + T重新打开关闭的标签页Ctrl + N新建窗口Ctrl + Shift + N新建无痕窗口Ctrl + Shift + O书签管理器Ctrl + Shift + B隐藏书签栏Ctrl + Shift + D添加书签Ctrl + Shift + I or J、F12开发者工具

2023-04-06 03:01:20 2183

原创 【Java并发编程】CountDownLatch

CountDownLatch是通过一个线程个数的计数器实现的同步处理操作,在初始化时可以为CountDownLatch设置一个线程执行总数,这样每当一个子线程执行完毕后都要执行减1操作,当所有的子线程都执行完毕后,CountDownLatch中保存的计数为0,则主线程恢复执行。本程序利用 CountDownLatch 定义了要等待的子线程数量,这样在该统计数量不为0的时候,主线代码暂时挂起,直到所有的子线程执行完毕(调用countDown()方法)后主线程恢复执行。CountDownLatch类常用方法。

2023-03-05 05:35:48 2077 1

原创 Windows 安装 Scoop 包管理器

Windows 管理器我只用过 chocolatey、scoop、还有自家的 winget,目前比较下来还是 scoop 最好用,chocolatey 虽然老牌但很多软件源缺少维护且需要管理员权限,winget 对国内软件支持度高多但还不成熟。开头,而用国内的网络直接访问 GitHub 可能打都打不开,更别说下载了,即使能下载也慢如龟速。这里 Scoop 的优势就体现出来了,搜索任意一篇“MySQL安装教程”,通篇图文并茂的文章操作下来,其实也就上面几行命令,节省了不少时间。

2023-01-14 21:15:36 3350

原创 【MySQL】绿色版下载配置教程(Windows)

MySQL绿色版下载配置教程(Windows)

2022-12-28 18:34:06 2537

原创 【Spring MVC】@RequestMapping 详解

RequestMapping注解一共有8个属性,常用的有value属性、method属性,其它6个属性往往容易被忽视,因此本文将逐一介绍这8个属性的作用及用法示例代码依赖版本如下。

2022-11-09 00:49:43 3339

原创 【Java并发编程】主线程等待子线程的多种方法

思路:所有任务提交后,调用线程池的shutdown()方法,然后在死循环里每隔几秒调用一次线程池的isTerminated()方法,判断所有线程在线程池关闭后是否都已完成。翻译为中文:如果所有任务在关闭后都已完成,则返回 true。1 部分案例使用线程池创建线程。方便起见使用Executors.newFixedThreadPool()方法创建一个固定大小的线程池。3 代码在main()方法中执行,出于方便演示,代码中有几处不规范的地方。缺点:若线程池中的任务完成耗时不确定,则不能及时执行主线程的任务。

2022-04-25 19:36:58 4155 2

原创 Spring Native 0.11.1 入门体验(Spring Boot 2)

近几年“原生”一词一直泛滥在云计算、边缘计算等领域中,而原生宠幸的语言也一直都是 Golang,Rust 等脱离 Sandbox 运行的开发语言。Java 得益于上世纪流行的一次编译,到处执行的理念,流行至今,但也因为这个原因,导致 Java 程序脱离不了 JVM 运行环境,使得不那么受原生程序的青睐。在云原生泛滥的今天,臃肿的 JVM 使 Java 应用程序对比其他语言显得无比的庞大,各路大神也想了很多方式让 Java 变的更“原生”。

2022-01-14 18:55:16 4555

原创 【Docker】部署 SpringBoot 项目

编写Dockerfile文件# 根据项目JDK版本自行调整FROM java:8# xxx为项目名ADD ./target/xxx-0.0.1-SNAPSHOT.jar xxx.jar# 配置容器的运行命令(exec模式)# 每个Dockerfile只能有一个ENTRYPOINT,如果指定了多个,只有最后一个被执行,而且一定会被执行ENTRYPOINT ["java", "-jar", "qndxx.jar"]# 设置容器时区为东八区,不写这句部署后的时间和本地时间相差8小时,可能会引发bu

2021-12-18 22:36:41 2754

原创 【Docker】使用SSL证书加密远程连接(附IDEA连接教程)

如果只是自己的虚拟机做快速演示,比如idea连接docker,可以直接开启端口,无需加密,节省时间公网环境严禁直接暴露端口,机器会被挖矿!vim /usr/lib/systemd/system/docker.service改为ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:23761.编写shell脚本,命名为docker_cert.sh#!/b

2021-10-24 21:12:16 8366 1

原创 【Docker】安装 Nacos 2.0.3(单机版)

1 如果不加jvm参数的话,nacos会很占服务器内存。测试了下不加任何jvm参数启动后实际占用内存900多M,加了上述jvm参数后降低到440多M。application.properties内容如下,该文件是通过docker cp命令原封不动的从nacos容器中拷贝出来的。而2.0.3版本挂载的文件是/home/nacos/conf/application.properties。低版本(1.4.x)挂载的文是/home/nacos/init.d/custom.properties。

2021-09-08 00:39:53 4476

原创 【MySQL理论】脏读、不可重复读、幻读

文章目录1. 脏读(dirty read)脏读是指事务读取到其他事务未提交的数据2. 不可重复读(non-repeatable read)不可重复读是指在同一次事务中前后查询不一致的问题3. 幻读(phantom read)幻读是一次事务中前后数据量发生变化,用户产生不可预料的问题4. 总结5. 解决方法1. 脏读(dirty read)脏读是指事务读取到其他事务未提交的数据例如:有事务A、B和一条记录:id为1,name为张三B首先进行更新操作,将name的值由张三改为张老三,但还未提交事务be

2021-09-07 23:57:23 11821 6

原创 【Spring Boot】@Async 注解的使用

案例需求:用户下单后,服务端生成订单并保存,然后给用户发短信、邮件通知下单成功由于短信和邮件发送比较耗时,是秒级别的,所以应采用异步的方式,实现方案有很多,这里使用Spring提供的对ThreadPoolExecutor封装的线程池ThreadPoolTaskExecutor,直接在业务方法上使用注解@Async即可(先用@EnableAsync开启)

2021-08-17 05:30:25 3522

原创 【Spring Boot】返回统一的JSON标准格式

GetterSC200 (200, "操作成功"),SC999 (999, "操作失败"),SC401 (401, "匿名用户访问权限资源时的异常"),SC403 (403, "无访问权限,请联系管理员授予权限"),SC404 (404, "请求的资源不存在"),SC500 (500, "系统异常,请稍后重试"),//... 略实现 ResponseBodyAdvice 接口后,方法的返回值类型就可以不再是先前统一的 ApiResult 了。

2021-08-14 00:13:52 10598 6

原创 Nginx静态资源服务器搭建

1 安装nginx(docker安装nginx见此篇)2 配置nginx的server代码块# 这是静态资源服务器的配置文件server { listen 80; server_name 域名; root /usr/local/src; # 缓存配置 location ~ .*\.(jpg|png|ico)(.*){ expires 30d; } # 缓存配置 location ~ .*\.(js|css)(.*){

2021-07-23 13:12:08 4074 2

原创 【数据结构】串的普通的模式匹配算法(BF算法)

#include<bits/stdc++.h>using namespace std;int BF(string S, string T);int BF(string S, string T, int pos);int BF(string S, string T) { return BF(S, T, 0);}/*** * BF即暴力(Brute Force)算法 算法的实现过程很 "无脑",不包含任何技巧,在对数据量大的串进行模式匹配时,算法的效率很低。 * 其

2021-06-28 21:52:28 4122

原创 Sentinel规则

Warm Up(预热):需设置预热时长(单位秒),假设为5,则效果就是前五秒请求资源名时,单机阈值始终为1,5秒后,阈值恢复到正常值,即设定的值。排队等待:需设置预热时长(单位毫秒,假设为300),当请求的资源超过单机阈值时,不会立马抛异常,会在0.3秒后再次请求该资源,若能调通,则不抛异常,否则抛出异常。​ 授权规则是对资源级别的控制,必须携带设定的某个参数并且该参数的值在白名单上才能放访问该资源,如果参数的值在黑名单上则不能访问该资源(需要编写配置类)异常数:一分钟内异常的请求数目大于设置的异常数。

2021-06-06 23:02:52 4132

原创 使用Nginx快速搭建静态资源服务器,并配置ssl证书

环境:腾讯云CentOS7.8Nginx1.19.10申请ssl证书:https://console.cloud.tencent.com/ssl3下载证书,将nginx目录中的两个文件上传至服务器,位置自定编写nginx配置文件# 这是静态资源服务器的配置文件server { listen 443 ssl; server_name 域名; # ssl证书配置 ssl_certificate .crt文件的路径; ssl_certificate_key .k

2021-06-03 16:11:13 4087

原创 【Spring Boot】整合 Hibernate-Validator 校验器

ConstraintValidator是一个泛型接口,A表示之前我们自定义的注解,T表示被这个注解注释的字段的类型,这里指String(学历用String类型表示)创建一个类,实现ConstraintValidator接口,重写两个方法:initialize和isValid,分别表示初始化验证消息的方法和执行验证的方法。创建一个全局异常处理类,用于捕获抛出的异常,这里主要是通过Stream的API获取到注解中message属性的值。输入一个非法的值,比如硕士,观察结果。

2021-05-15 22:12:04 6880 1

原创 【Spring Boot】整合 AOP

认识AOP1.1 什么是AOP1.2 AOP中的概念SpringBoot整合AOP代码示例2.1 使用execution(路径表达式)2.2 使用annotation(注解)1 认识Spring AOP1.1 什么是AOPAOP (Aspect Oiented Programn,面向切面编程)把业务功能分为核心、非核心两部分。● 核心业务功能:用户登录、增加数据、删除数据。● 非核心业务功能:性能统计、日志、事务管理。在Spring的面向切面编程( AOP )思想里,非核心业.

2021-05-10 00:15:16 6241 14

原创 【Docker】安装 RabbitMQ

Docker安装RabbitMQ普通安装还需要安装erlang,docker一个命令即可下载所有依赖,很方便1 获取rabbitmq镜像docker pull rabbitmq:management2 创建并运行容器docker run -id --name=c_rabbitmq \-e RABBITMQ_DEFAULT_USER=admin \-e RABBITMQ_DEFAULT_PASS=admin \-p 15672:15672 \-p 5672:5672 \-p 25672:

2021-05-02 00:45:41 3902 2

原创 【Spring Boot】使用 SSL 证书加密 API(HTTPS)

返回的json数据是我对404进行了捕获,无需在意,出现上面的结果是正常的,因为我们申请的证书域名的ip肯定不是localhost,浏览器会认为证书是无效的,只有部署到和证书域名一样的服务器上才会生效,若申请证书绑定的域名和你部署到的服务器的域名不一致,即使部署到线上证书仍然不被浏览器所认可。编写配置文件,和你的文件名保持一致,key-store-password就是keystorePass.txt中的内容,只配置3项就可以生效了,无需编写配置类。这里是http访问的,改为https的效果如下。

2021-05-02 00:43:08 5397 2

原创 【Vue】Docker 部署 Vue 项目

2 执行npm run build命令,将生成的dist目录上传至服务器,和Dockerfile在同一路径下即可。1 编写nginx.conf。3 编写Dockerfile。4 构建镜像,略,见。5 启动容器,略,见。

2021-04-30 01:43:16 4060 2

空空如也

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

TA关注的人

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