old wang
搜索文章
首页
= 768 && isOpen) { isOpen = false; setTimeout(() => enableScroll(document.body), 200); }" >
enableScroll(document.body), 200);" x-transition:enter="transition ease duration-300" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease duration-300" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" style=" position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 1001; overscroll-behavior: none; " >
enableScroll(document.body), 200)" >
首页
全部
默认分类 (1)
RAG (13)
环境搭建 (3)
GIS (2)
工程实践 (15)
分布式架构 (4)
性能优化 (7)
Java 大文件上传实践:秒传、分片上传、断点续传
文件上传是后台系统里很常见的功能。 如果只是上传几 MB 的图片、文档,直接用 MultipartFile 接收就可以: @PostMapping("/upload") public String upload(MultipartFile file) { // 保存文件 return
作者:old wang
发布时间:2026-06-20
分类:
工程实践
标签:
#
SpringBoot
Vibe Coding使用技巧
AI 编程工具越来越强,很多人开始用 Cursor、Claude Code、Codex、Trae 等工具做所谓的 Vibe Coding。 有些人用得很顺:需求拆得快,代码落得快,测试也能补上。 但也有不少人用得很痛苦:AI 改着改着把项目搞乱了,功能看似完成,实际一跑全是问题,最后还得自己一点点排
作者:old wang
发布时间:2026-06-01
分类:
工程实践
Maven 依赖拉取失败常见原因和排查思路
在 Java 项目开发中,Maven 依赖问题很常见。 常见现象包括: SNAPSHOT 版本不是最新的 依赖完全拉不下来 本地能构建,别人拉不下来 实际使用的依赖版本和预期不一致 这些问题看起来都像是“依赖拉不下来”,但背后的原因可能完全不同。 有可能是: 本地缓存问题; Nexus 私服没有对应
作者:old wang
发布时间:2026-05-23
分类:
工程实践
线程池中如何正确传递 traceId?
为什么 InheritableThreadLocal 在线程池中不可靠? 在 Java Web 项目中,我们经常会把一些请求级上下文信息放到 ThreadLocal 中,例如: traceId userId tenantId 登录用户信息 日志 MDC 上下文 这样做的好处
作者:old wang
发布时间:2025-05-23
分类:
工程实践
Spring Boot 菜单无限层级设计
parent_id、路径枚举与闭包表怎么选 后台系统里,菜单、部门、分类、权限资源都绕不开树形结构。很多系统一开始都会用 parent_id,因为它简单、直观、好维护。但一旦线上出现递归栈溢出、循环引用、查询变慢,就容易得出一个过度结论parent_id 不行,必须换闭包表。 这个结论并不准确。 树
作者:old wang
发布时间:2025-05-22
分类:
工程实践
Spring Boot 集成 Apache Tika 实现文档内容解析
在业务系统中,经常会遇到文档内容解析的需求。 例如: 上传 PDF 后提取正文内容; 解析 Word、Excel、PPT 文件内容; 对附件内容做全文检索; 读取用户上传文档中的文本信息; 判断文件类型; 提取文件元数据。 如果每种文件格式都单独引入解析库,代码会比较分散,维护成本也比较高。 这类场
作者:old wang
发布时间:2025-02-26
分类:
工程实践
Spring Boot 中使用策略模式优化多分支业务逻辑
在业务系统中,经常会遇到这样一种场景: 同一个接口入口,根据请求中的某个字段,走不同的业务处理逻辑。 比如: 第三方 OA 系统回调; 支付渠道回调; 消息通知分发; 文件类型处理; 不同业务类型的审批流程; 不同来源的数据同步逻辑。 最直接的写法,可能是在一个方法里写大量 if...else if
作者:old wang
发布时间:2025-02-22
分类:
工程实践
MySQL 迁移 PostgreSQL 常见问题记录
MySQL 切 PostgreSQL,不只是改个驱动 原项目技术栈是: Spring Boot + MyBatis-Plus + MySQL 最开始切 PostgreSQL 时,以为只是: 换一个数据库驱动; 改一下 JDBC URL; 调整一下数据库连接配置。 实际迁移过程中才发现,真正麻烦的不
作者:old wang
发布时间:2025-01-22
分类:
工程实践
Excel 数据导入时做数据校验
在后台管理系统中,Excel 导入是一个很常见的功能。 典型需求一般包括: 下载 Excel 导入模板; 用户填写数据后上传; 后端解析 Excel; 对每一行数据进行校验; 校验通过的数据进入成功列表; 校验失败的数据进入失败列表; 前端展示失败原因,支持用户修正后重新导入。 这类需求看起来不复杂
作者:old wang
发布时间:2024-05-23
分类:
工程实践
基于 Spring Cache 切换 Caffeine 与 Redis 并支持多租户
在 Spring Boot 项目中,缓存是很常见的能力。 最直接的写法是业务代码中注入 RedisTemplate,然后手动操作缓存。 例如: redisTemplate.opsForValue().get(key); redisTemplate.opsForValue().set(key, val
作者:old wang
发布时间:2024-03-23
分类:
工程实践
共 15 篇文章
1
2
页