阿里巴巴Java开发手册:MySQL数据库设计规约解析

需积分: 50 11 下载量 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开发手册详解》的出版,为开发者提供了更详尽的指导。