后端笔记
未读
Java与Docker进行通信
目标:让本地 Java 应用(运行在 Windows/macOS)通过 TCP 连接控制 Ubuntu 虚拟机中的 Docker 守护进程。 🧩 背景说明 默认情况下,Docker 仅监听本地 Unix Socket(/var/run/docker.sock),无法被远程主机访问。 为了让 Jav
后端笔记
未读
在 MyBatis-Plus 中对 TEXT 存储的 JSON 字符串实现多标签(tags)模糊查询
🌟 场景描述 在许多项目中,为了简化表结构,我们会将一对多的标签数据序列化为 JSON 字符串,存入数据库的 TEXT 字段。例如: -- 表结构示例
CREATE TABLE question (
id BIGINT PRIMARY KEY,
title VARCHAR(255)
后端笔记
未读
别再重复加密密码了!Spring Security 中正确验证旧密码的方式
在使用 Spring Security 构建用户认证系统时,我们通常会通过 BCryptPasswordEncoder 对用户密码进行加密存储,以保障安全性。但在实现“修改密码”功能时,我曾犯过一个看似低级却非常典型的错误——对用户输入的旧密码再次加密,然后与数据库中的密文直接比对。 直到调试时才发
后端笔记
未读
基于 Redisson 实现精细化接口限流:普通用户 vs VIP 用户的差异化控制
在高并发系统中,限流(Rate Limiting) 是保护后端服务不被突发流量打垮的关键手段。但传统的“一刀切”限流策略往往无法满足业务多样性需求——比如,我们希望 普通用户每秒最多调用 1 次接口,而 VIP 用户可以调用 5 次。 本文将带你使用 Redisson + Redis 实现一种灵活、
后端笔记
未读
MySQL中JSON字段类型反序列化问题
😀问题描述 在 MyBatis-Plus 中,若想将数据库中的 JSON 字段 自动映射为 Java 对象(如 Map<String, Object> 或自定义 POJO),通常会使用内置的 JacksonTypeHandler。 但仅配置typeHandler是不够的,你还需要开启一个关键开关: