From 47d8af24f0c9a689888b4615bfbd84856c55bbf7 Mon Sep 17 00:00:00 2001 From: pigeon Date: Sat, 6 Jun 2026 12:42:09 +0800 Subject: [PATCH] =?UTF-8?q?docs(standards):=20=E6=B7=BB=E5=8A=A0=20MyBatis?= =?UTF-8?q?=20Plus=20LambdaQueryWrapper=20=E8=A7=84=E8=8C=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在数据库规范中新增 MyBatis Plus 查询规范章节 - 明确优先使用 LambdaQueryWrapper,避免使用字符串字段名的 QueryWrapper - 添加正反对照示例和优势说明 对应工单 #2 --- standards/coding-standards.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/standards/coding-standards.md b/standards/coding-standards.md index f72fd36..8e6cda4 100644 --- a/standards/coding-standards.md +++ b/standards/coding-standards.md @@ -189,6 +189,27 @@ CREATE TABLE example_table ( ) COMMENT='示例表'; ``` +### MyBatis Plus 查询规范 + +**优先使用 `LambdaQueryWrapper`,避免使用字符串字段名的 `QueryWrapper`。** + +```java +// ❌ 错误示例:使用字符串字段名,容易拼写错误,重构时容易遗漏 +new QueryWrapper().eq("user_name", username) + .like("phone", phone); + +// ✅ 正确示例:使用 LambdaQueryWrapper,类型安全,重构友好 +new LambdaQueryWrapper() + .eq(User::getUserName, username) + .like(User::getPhone, phone); +``` + +**优势:** +- **类型安全**:编译期检查,字段不存在会报错 +- **防误写**:避免字符串拼写错误 +- **重构友好**:IDE 重构时自动更新引用 +- **可读性**:直接看到实体字段,更清晰 + --- ## 🔒 安全规范