# Mapper 类注释模板 ## 类注释模板 ```java /** * [实体名称]数据访问接口 * *
对应数据库中的 [表名] 表,提供[实体名称]相关的数据访问操作。 * 本接口使用 MyBatis-Plus 框架,继承 BaseMapper 提供基础的 CRUD 操作。 * *
主要功能: *
根据[条件描述]从数据库查询符合条件的[实体名称]列表。 * * @param [参数名] [参数说明] * @return [实体名称]列表,如果不存在则返回空列表 */ List<[Entity]> selectBy[Condition]([ParamType] [paramName]); ``` ### 自定义更新方法 ```java /** * 根据[条件]更新[实体名称] * *
根据[条件描述]更新[实体名称]的指定字段。 * * @param [参数名] [参数说明] * @return 更新的记录数 */ int updateBy[Condition]([ParamType] [paramName]); ``` ### 自定义删除方法 ```java /** * 根据[条件]删除[实体名称] * *
根据[条件描述]删除符合条件的[实体名称]记录。 * * @param [参数名] [参数说明] * @return 删除的记录数 */ int deleteBy[Condition]([ParamType] [paramName]); ``` ### 使用 @Select 注解的方法 ```java /** * 根据[条件]查询[实体名称] * *
使用自定义 SQL 查询符合条件的[实体名称]。 * * @param [参数名] [参数说明] * @return [实体名称]信息,如果不存在则返回 null */ @Select("SELECT * FROM [表名] WHERE [条件] = #{[参数名]}") [Entity] selectBy[Condition](@Param("[参数名]") [ParamType] [paramName]); ``` ## 使用示例 ### MyBatis-Plus Mapper 示例 ```java /** * 用户数据访问接口 * *
对应数据库中的 users 表,提供用户相关的数据访问操作。 * 本接口使用 MyBatis-Plus 框架,继承 BaseMapper 提供基础的 CRUD 操作。 * *
主要功能: *
根据用户名从数据库查询对应的用户信息。 * * @param username 用户名 * @return 用户信息,如果不存在则返回 null */ @Select("SELECT * FROM users WHERE username = #{username}") User selectByUsername(@Param("username") String username); /** * 根据邮箱查询用户 * *
根据邮箱地址从数据库查询对应的用户信息。 * * @param email 邮箱地址 * @return 用户信息,如果不存在则返回 null */ @Select("SELECT * FROM users WHERE email = #{email}") User selectByEmail(@Param("email") String email); /** * 检查用户名是否存在 * *
检查指定的用户名是否已经在数据库中存在。 * * @param username 用户名 * @return 如果存在返回 true,否则返回 false */ @Select("SELECT COUNT(*) > 0 FROM users WHERE username = #{username}") boolean existsByUsername(@Param("username") String username); } ``` ### MyBatis XML Mapper 示例 ```java /** * 订单数据访问接口 * *
对应数据库中的 orders 表,提供订单相关的数据访问操作。 * 本接口使用 MyBatis 框架,SQL 语句定义在对应的 XML 映射文件中。 * *
主要功能: *
根据用户 ID 从数据库查询该用户的所有订单信息。
*
* @param userId 用户唯一标识符
* @return 订单列表,如果不存在则返回空列表
*/
List 根据订单状态从数据库查询符合条件的订单列表。
*
* @param status 订单状态(0-待支付,1-已支付,2-已取消)
* @return 订单列表,如果不存在则返回空列表
*/
List 统计指定用户的订单总数。
*
* @param userId 用户唯一标识符
* @return 订单数量
*/
int countByUserId(Long userId);
}
```
## 注释要点
1. **类注释**:
- 说明对应的数据库表
- 说明使用的 ORM 框架(MyBatis 或 MyBatis-Plus)
- 列出主要功能点
2. **方法注释**:
- 清晰描述查询/更新/删除的目的
- 详细说明所有参数
- 说明返回值类型和含义
- 对于自定义 SQL,可以说明 SQL 的作用
3. **参数注释**:
- 使用 `@Param` 注解时,参数说明要清晰
- 说明参数的数据类型和约束