物联网平台SQL治理手记 · 系列导览
技术栈:Spring Boot + MyBatis + MyBatis-Plus + MySQL 适合谁读:想系统搞懂手写 Mapper SQL 常见隐患,并建立一套可复用优化思路的开发者
MyBatis 把 SQL 的控制权完全交给开发者:SQL 对不对、安不安全、快不快,全靠写代码的人自己负责。本系列以一个物联网平台的数据访问层治理为线索,把手写 SQL 的隐患按「安全线 → 性能线 → 维护线」梳理成五篇,从最危险的注入讲到最隐蔽的死代码,每篇都给出可直接落地的改造方案。
阅读路径
| 序号 | 文章 | 主线 |
|---|---|---|
| 01 | 开篇——手写SQL的隐患全景 | 五类隐患全景图与治理章法 |
| 02 | SQL注入——拼接与白名单改造 | 安全线:${} 裸拼的风险与白名单方案 |
| 03 | SELECT反模式——显式列替代 | 性能线:select * 的代价与改造 |
| 04 | 性能反模式——前导通配与深分页 | 性能线:索引失效与深分页优化 |
| 05 | 死代码与接口一致性——清理与校验 | 维护线:死代码清理与接口校验 |
| 06 | 附录:SqlWhitelistValidator 完整代码 | 可独立运行的白名单校验工具 |