王旭阳个人博客

WXY

技术教程

让群晖DSM的文本编辑器支持双击打开更多文件扩展名

群晖 DSM 商店提供了一个文本编辑器的套件,用户可以在 File Station 中双击支持的文件格式,直接打开文本编辑界面。最近,我在群晖上启动了 frpc 程序,其配置文件的后缀为 .toml,但在双击时无法直接打开编辑,反而弹出了下载框。经过一番尝试,我终于实现了双击 .toml 文件直接打
99
0
2
2025-02-12

群晖DSM卸载套件后删除用户、组和残留文件

在群晖卸载套件后,发现套件创建的用户和组仍然存在,且相关文件也有残留。可以通过以下方法进行删除: MoviePilot套件已经卸载了 却还能看到该用户
65
0
1
2025-02-12

Java 反射技术实现 List 合计功能的工具类

在开发过程中,我们经常需要对一个 List 中的对象进行合计计算。例如,统计一组销售数据、订单金额、用户访问量等,可能需要对某些数值字段进行合计。这些字段可能是 int、Integer 或 BigDecimal 类型。为了简化这类任务,我们可以封装一个通用的工具类,使用 Java 的反射机制动态地对
137
1
0
2024-12-27

GM219-S光猫获取超管密码和宽带密码并改为桥接模式

获取超管密码和宽带账户密码后(如果您已经知道宽带密码,可以跳过此步骤,或者直接拨打营运商电话索取宽带密码)我们可以做些什么呢?我们可以利用光猫进行拨号,以提升网络性能,并且还能够获取公网IPv6。 登陆光猫 使用光猫背面地址和默认账户密码登陆光猫
453
0
2
2024-11-28

frp安装和使用并结合nginx配置域名https访问

前言 在开发过程中,我们常常需要将本地开发的服务或者内网应用暴露到公网进行测试或使用。FRP (Fast Reverse Proxy) 是一款高效的内网穿透工具,可以帮助你将内网服务暴露到外部网络。而 Nginx 作为一个高性能的 Web 服务器和反向代理服务器,通常用于处理 HTTP/HTTPS
361
0
3
2024-11-20

自建Docker镜像加速服务

准备工作 自建Docker镜像加速服务,基于官方Docker Registry 一键部署Docker、K8s、Quay、Ghcr、Mcr、Nvcr等镜像加速\管理服务 ⚠️ 重要:选择一台国外服务器,并且未被墙。对于域名,无需进行国内备案。你也可以通过一些平台申请免费域名。在一键部署过程中,如果选择
628
2
7
2024-11-20
使用 swap 文件 增加Linux交换空间(通用方法)

使用 swap 文件 增加Linux交换空间(通用方法)

使用 swap 文件 来增加交换空间的方法在大多数 Linux 发行版中都是通用的,包括 Debian、Ubuntu、CentOS、Fedora、Arch Linux 等主流发行版。具体来说,swap 文件 是一种更灵活且更简单的方式,适用于大多数现代 Linux 系统,而 swap 分区 是较传统
147
1
1
2024-11-13
使用Halo静态网页服务插件和GitHub Actions 实现自动部署

使用Halo静态网页服务插件和GitHub Actions 实现自动部署

前言 Halo作为一个优秀的开源博客系统,结合静态网页服务插件,能够实现快速、稳定的静态页面发布。通过集成GitHub Actions自动化工作流,我们可以进一步优化部署流程,将代码的变更实时同步到线上。 本文将介绍如何使用Halo静态网页服务插件,并结合GitHub Actions,实现自动化构建与部署,帮助开发者简化操作、提升效率。 Halo静态网页服务插件文档: https://www.halo.run/store/apps/app-gFkMn?tab=readme 安装静态网页服务插件,并新建项目
183
0
3
2024-10-17
Java文件写入详解:FileWriter和BufferedWriter的使用

Java文件写入详解:FileWriter和BufferedWriter的使用

Java的文件操作包含读写两个方面。对于读取操作,Java提供了Reader抽象类;与之对应,写入操作则由Writer抽象类支持。Writer作为所有输出字符流的统一接口,允许将数据写入文件,实现持久化存储。这种设计确保了读写操作的一致性和灵活性。 FileWriter FileWriter 是 W
138
0
1
2024-10-11
Spring事务失效的常见陷阱与解决方案

Spring事务失效的常见陷阱与解决方案

本篇通过一道面试题和一些实践,来拆解几个Spring事务的常见坑点。 原理 Spring事务的原理是:通过AOP切面的方式实现的,也就是通过代理模式去实现事务增强。 具体过程是:对包含@Transactional注解的方法进行拦截,然后重写,重新在方法里加入异常回滚的逻辑。而且,每个线程都是独立管理自己的事务,相互隔离。 原理简单,使用起来也简单,也就是在方法上打上@Transactional注解,然后事务就正常生效了。也很少有人去验证异常情况下是否能真正的回滚。 Spring事务让我熟悉的地方是哪哪看起来都简单,让我陌生的地方使用时的变种较多,有时候莫名其妙的不生效。
245
1
1
2024-10-10