开发笔记
未读
Java 多线程(二):线程生命周期与状态转换
本文详解 Java 线程的六种生命周期状态(NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING、TERMINATED),并结合代码说明各状态间的转换关系及触发方法(如 start、synchronized、wait/notify、sleep、join 等),帮助读者构建线程运行机制的完整认知。
开发笔记
未读
Java 多线程(一):三种线程创建方式
本文介绍了Java多线程的三种创建方式:继承Thread类、实现Runnable接口、实现Callable接口。继承Thread类简单直观,但受限于单继承;实现Runnable接口解耦任务与线程,支持Lambda,最常用;Callable接口支持返回结果和抛出异常,配合FutureTask使用。文章强调推荐实现Runnable接口,并注意处理线程中断。
开发笔记
未读
用 Termux 在安卓手机编译运行 Java 程序
本文介绍如何借助 Termux 在安卓手机上搭建 Java 开发环境,并完成“Hello World”程序的编写、编译与运行。文章详细演示了安装 Termux、更新软件包、安装 OpenJDK 21 及验证环境等步骤,强调无需电脑和 root 权限,即可让手机变身 Linux 开发终端,为 Java 学习和实践提供便捷的移动方案。
开发笔记
未读
Java 竞赛输入输出模板:让 Scanner 快十倍
在算法竞赛或大规模数据处理场景中,Java的Scanner类虽然使用方便,但其性能表现常常成为程序的瓶颈。尤其是在读取大量输入时,Scanner的效率远低于基于缓冲的输入方式。今天,我想分享一个我在多次竞赛中打磨出的高效输入输出模板,它能让你在不改变编码习惯的前提下,大幅提升输入速度。 为什么需要这
开发笔记
未读
PHP 两行代码实现随机图片 API
本文介绍用纯 PHP 实现随机图片 API 的两种简洁方案:一是从本地 images/ 目录随机选择图片并 302 重定向;二是从 urls.txt 文件读取远程图片链接随机跳转。两种方式均支持跨域、自动识别 HTTPS 和 URL 编码处理,无需数据库或框架,部署简单,适合个人网站、壁纸应用等轻量级场景。
开发笔记
未读
Spring Boot 邮件实战:基于 Jakarta Mail 发送邮件
在现代的 Web 应用开发中,邮件功能几乎是不可或缺的一环。无论是用户注册验证、密码找回、系统通知,还是营销推广,都需要通过邮件与用户建立联系。本文将带你从零开始,使用 Spring Boot 和 Jakarta Mail 实现一个稳定、可配置的邮件发送功能。 我们将基于一个实际的 Spring B
开发笔记
未读
Spring Boot 对接 123 云盘 API:文件上传与直链获取
本文介绍了在Spring Boot中对接123云盘API的完整流程,包括注册开发者账号获取凭证、添加OkHttp依赖、配置属性类,以及实现AccessToken服务来获取和管理令牌,最终实现文件上传与直链获取功能。