阿里巴巴Java开发手册:MySQL数据库设计规约解析
需积分: 50 70 浏览量
更新于2024-08-07
收藏 1.01MB PDF 举报
"MySQL数据库设计规范和Java开发规约"
在MySQL数据库设计方面,有以下重要的规约和注意事项:
1. **建表规约**:
- **表达是与否的字段** 应使用 `is_xxx` 命名,如 `is_deleted`,并使用 `unsigned tinyint` 数据类型,1表示是,0表示否。
- **表名和字段名** 应全部使用小写字母,禁止数字开头,避免两个下划线中间只出现数字。在Linux环境下,MySQL是区分大小写的,因此应避免使用大写字母。
- **表名不应使用复数名词**,表名应表示实体内容,而非数量,与DO类名保持一致。
- **禁用保留字**,避免使用MySQL的保留字作为字段名,例如 `desc`, `range`, `match`, `delayed` 等。
- **索引命名** 遵循 `pk_字段名`(主键)、`uk_字段名`(唯一索引)和 `idx_字段名`(普通索引)的规则。
- **小数类型** 应使用 `decimal`,避免 `float` 和 `double` 的精度问题。
- **存储字符串** 若长度几乎相等,推荐使用 `char` 类型。
- **长字符串** 长度超过5000的字符串应使用 `text` 类型,并独立成表,通过主键关联,避免影响其他字段的索引效率。
- **必备字段** 每张表应包含 `id`(主键,unsigned bigint,自增,步长1),`gmt_create`(创建时间,date_time类型),`gmt_modified`(修改时间,date_time类型)。
在Java开发方面,遵循《阿里巴巴Java开发手册》的规约:
1. **命名风格**:
- 规约强调了清晰、统一的命名规范,如类名首字母大写,方法名首字母小写,常量全大写,变量名首字母小写等。
2. **常量定义**:
- 常量名使用全大写,单词间用下划线分隔,例如 `MAX_SIZE`。
3. **代码格式**:
- 包含代码缩进、空格使用、换行规则等,保持代码整洁,提高阅读性。
4. **OOP规约**:
- 关注面向对象设计原则,如单一职责、开闭原则、依赖倒置等。
5. **集合处理**:
- 推崇正确使用集合类型,避免不必要的类型转换,注意集合初始化大小。
6. **并发处理**:
- 强调线程安全和同步控制,合理使用锁,避免死锁和活锁。
7. **控制语句**:
- 控制语句的使用应简洁明了,避免复杂的嵌套结构。
8. **注释规约**:
- 注释要清晰,提供必要说明,但不过多,避免冗余。
9. **其它**:
- 包括异常处理、日志记录、单元测试等方面的规范,确保代码健壮性和可维护性。
这些规约旨在提高代码质量和团队协作效率,避免因个人习惯差异导致的问题。此外,阿里巴巴提供了Java开发规约插件,通过工具自动化检查代码规约遵守情况,以进一步提升代码质量。同时,《阿里巴巴Java开发手册详解》的出版,为开发者提供了更详尽的指导。
2021-12-18 上传
2022-12-04 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2023-05-19 上传
![](https://profile-avatar.csdnimg.cn/66bdbfacce6e4ca6b716f0abdf8acb6a_weixin_26729841.jpg!1)
杨_明
- 粉丝: 74
- 资源: 3962
最新资源
- Hadoop生态系统与MapReduce详解
- MDS系列三相整流桥模块技术规格与特性
- MFC编程:指针与句柄获取全面解析
- LM06:多模4G高速数据模块,支持GSM至TD-LTE
- 使用Gradle与Nexus构建私有仓库
- JAVA编程规范指南:命名规则与文件样式
- EMC VNX5500 存储系统日常维护指南
- 大数据驱动的互联网用户体验深度管理策略
- 改进型Booth算法:32位浮点阵列乘法器的高速设计与算法比较
- H3CNE网络认证重点知识整理
- Linux环境下MongoDB的详细安装教程
- 压缩文法的等价变换与多余规则删除
- BRMS入门指南:JBOSS安装与基础操作详解
- Win7环境下Android开发环境配置全攻略
- SHT10 C语言程序与LCD1602显示实例及精度校准
- 反垃圾邮件技术:现状与前景