97 lines
3.6 KiB
Markdown
97 lines
3.6 KiB
Markdown
# 命名规范
|
||
|
||
良好的命名规范,能够大幅提升可读性、维护性,避开生僻单词!**言简意赅始终是最佳选择。**
|
||
|
||
## Java源码的基础命名规范
|
||
|
||
| 类型 | 命名规范 | 示例 |
|
||
| --- | --- | --- |
|
||
| 局部变量 | 小驼峰 | `name`、`userName` |
|
||
| 静态常量 | 英文大写、单词与单词之间下划线连缀 | `ELEMENT_TYPE` |
|
||
| 方法名 | 使用动词、小驼峰 | `doLogin`、`execute` |
|
||
| 类名 | 使用名词或形容词、大驼峰 | `UserInfo` |
|
||
| 数据库 ORM 实体类 | 在类名的基础上增加 `Entity` 后缀 | `UserInfoEntity` |
|
||
| 数据传输对象(Data Transfer Object,简称 DTO) | 在类名的基础上增加 `DTO` 后缀 | `UserInfoDTO` |
|
||
| 视图对象(View Object,简称 VO) | 在类名的基础上增加 `VO` 后缀 | `UserInfoVO` |
|
||
|
||
## 缩写命名示例
|
||
|
||
|命名|含义|
|
||
|---|---|
|
||
|etc|配置文件(etcetera)|
|
||
|usr|用户系统资源(user system resources)|
|
||
|opt|可选(optional)|
|
||
|tmp|临时(temporary)|
|
||
|boot|启动相关|
|
||
|sys|系统( system)|
|
||
|ctl|控制(control)|
|
||
|sync|同步(synchronize)|
|
||
|cfg|配置(config)|
|
||
|conf|配置文件(configuration)|
|
||
|do|执行|
|
||
|
||
这些命名短小、可读,几十年里保持了一致性、可预测性、简洁性,让人看到名字就能大致猜到用途。
|
||
|
||
## Spring的命名
|
||
|
||
### 常见类名后缀
|
||
|
||
| 后缀 | 含义 | 示例 |
|
||
|---|---|---|
|
||
| `Controller` | 控制器 | `UserController` |
|
||
| `Service` | 服务 | `UserService` |
|
||
| `ServiceImpl` | 服务实现 | `UserServiceImpl` |
|
||
| `Repository` | 仓储/DAO | `UserRepository` |
|
||
| `Mapper` | MyBatis 映射器 | `UserMapper` |
|
||
| `DAO` | 数据访问对象 | `UserDAO` |
|
||
| `Config` | 配置类 | `WebConfig` |
|
||
| `Properties` | 配置属性 | `JwtProperties` |
|
||
| `Filter` | 过滤器 | `AuthFilter` |
|
||
| `Interceptor` | 拦截器 | `LoginInterceptor` |
|
||
| `Advice` | 增强/通知 | `GlobalExceptionAdvice` |
|
||
| `Aspect` | 切面 | `LogAspect` |
|
||
| `Listener` | 监听器 | `OrderListener` |
|
||
| `Handler` | 处理器 | `GlobalExceptionHandler` |
|
||
| `Factory` | 工厂 | `BeanFactory` |
|
||
| `Builder` | 构建器 | `RequestBuilder` |
|
||
| `Converter` | 转换器 | `UserConverter` |
|
||
| `Validator` | 校验器 | `UserValidator` |
|
||
| `Template` | 模板 | `JdbcTemplate` |
|
||
| `Client` | 客户端 | `FeignClient` |
|
||
| `DTO` | 数据传输对象 | `UserDTO` |
|
||
| `VO` | 值对象/视图对象 | `UserVO` |
|
||
| `Entity` | 实体 | `UserEntity` |
|
||
| `Request` | 请求对象 | `LoginRequest` |
|
||
| `Response` | 响应对象 | `LoginResponse` |
|
||
| `Exception` | 异常 | `BizException` |
|
||
| `Enum` | 枚举 | `OrderStatusEnum` |
|
||
| `Util` | 工具类 | `DateUtil` |
|
||
| `Constant` | 常量类 | `RedisConstant` |
|
||
| `Test` | 测试类 | `UserServiceTest` |
|
||
|
||
### 常见方法命名
|
||
|
||
| 命名 | 含义 |
|
||
|---|---|
|
||
| `findById` | 按 ID 查询 |
|
||
| `findAll` | 查询全部 |
|
||
| `getUserById` | 获取用户 |
|
||
| `save` | 保存 |
|
||
| `saveAll` | 批量保存 |
|
||
| `update` | 更新 |
|
||
| `deleteById` | 按 ID 删除 |
|
||
| `existsById` | 判断是否存在 |
|
||
| `count` | 统计数量 |
|
||
| `createOrder` | 创建订单 |
|
||
| `cancelOrder` | 取消订单 |
|
||
| `handleException` | 处理异常 |
|
||
| `validateToken` | 校验令牌 |
|
||
| `loadUserByUsername` | 按用户名加载用户 |
|
||
| `findByUsername` | 按用户名查询 |
|
||
| `findByUsernameAndStatus` | 按用户名和状态查询 |
|
||
| `findByAgeGreaterThan` | 年龄大于 |
|
||
| `findByCreateTimeBetween` | 创建时间在区间内 |
|
||
| `findByUsernameContaining` | 用户名包含 |
|
||
| `findByStatusOrderByCreateTimeDesc` | 按状态查并倒序 |
|
||
| `deleteByUsername` | 按用户名删除 |
|
||
| `countByStatus` | 按状态统计 | |