推薦 阿里巴巴 java開(kāi)發(fā)手冊(cè)
Java 相關(guān)命名、規(guī)范
- 命名:
- Java 類名命名(用名詞性單詞組合)
-
普通類名:首字母大寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的,使用大駝峰命名法進(jìn)行命名,
eg:CategoryService -
抽象類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Abstract,
eg:CategoryAbstract -
自定義異常類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Exception,
eg:CategoryException -
隊(duì)列類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Queue,
eg:CategoryQueue -
后臺(tái)任務(wù)類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Task 或 Job,
eg:CategoryTask、CategoryJob -
Servlet 類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Servlet,
eg:CategoryServlet -
Filter 類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Filter,
eg:CategoryFilter -
工廠類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Factory,
eg:CategoryFactory -
工具類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Util,
eg:CategoryUtil -
測(cè)試類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Test,
eg:CategoryServiceTest -
數(shù)據(jù)庫(kù)訪問(wèn)層接口類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Dao,
eg:CategoryDao -
數(shù)據(jù)庫(kù)訪問(wèn)層實(shí)現(xiàn)類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 DaoImpl,
eg:CategoryDaoImpl -
業(yè)務(wù)層接口類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Service,
eg:CategoryService -
業(yè)務(wù)層實(shí)現(xiàn)類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 ServiceImpl,
eg:CategoryServiceImpl -
控制層類名:在普通類名的基礎(chǔ)上對(duì)其命名后加上 Controller,
eg:CategoryController、CategoryAction、CategoryActivity
-
普通類名:首字母大寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的,使用大駝峰命名法進(jìn)行命名,
-
常量名:全部字母大寫(xiě),有多個(gè)單詞用下劃線分隔,
eg:MY_AGE -
常規(guī)變量名:首字母小寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的,使用小駝峰命名法進(jìn)行命名,
eg:categoryName -
復(fù)數(shù)變量名:首字母小寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的,使用小駝峰命名法進(jìn)行命名,
eg:List:categoryListMap:categoryMapSet:categorySet
-
package 名:所有單詞全部小寫(xiě),即使有多個(gè)單詞組成,且不能使用下劃線連接,或是其他任意字符連接,
eg:googlebook -
方法參數(shù)名:首字母小寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的,使用小駝峰命名法進(jìn)行命名,
eg:categoryName -
方法命名(用動(dòng)詞性單詞開(kāi)頭):
-
數(shù)據(jù)庫(kù)訪問(wèn)層方法名
saveCategory()deleteCategoryByObject()deleteCategoryById()updateCategoryByObject()updateCategoryById()findCategoryList()findCategory()
-
業(yè)務(wù)層方法名
saveCategory()deleteCategoryByObject()deleteCategoryById()updateCategoryByObject()updateCategoryById()findCategoryList()findCategory()initCategory()openConnection()closeConnection()writeFile()readFile()
-
視圖層(JSP、FreeMarker 等):
categoryListcategoryAddcategoryUpdatecategoryEditcategoryDetailcategoryTree
-
數(shù)據(jù)庫(kù)訪問(wèn)層方法名
- Java 類名命名(用名詞性單詞組合)
- 規(guī)范:
- 當(dāng)一個(gè)類有多個(gè)構(gòu)造函數(shù),或是多個(gè)同名方法,這些函數(shù) / 方法應(yīng)該按順序出現(xiàn)在一起,中間不要放進(jìn)其它函數(shù) / 方法
- 導(dǎo)入包的時(shí)候,import 后面不要使用通配符 * 來(lái)代替有些包的導(dǎo)入
- 大括號(hào)與 if, else, for, do, while 語(yǔ)句一起使用,即使只有一條語(yǔ)句(或是空),也應(yīng)該把大括號(hào)寫(xiě)上
- 不要使用組合聲明,比如 int a, b;
- 需要時(shí)才聲明,并盡快進(jìn)行初始化
- 注解緊跟在文檔塊后面,應(yīng)用于類、方法和構(gòu)造函數(shù),一個(gè)注解獨(dú)占一行
- 注釋:
- 塊注釋
/*
logger.info("---------開(kāi)始---------");
SubmitOrderInfo submitOrderInfo = getSubmitOrderInfo(orderId);
*/
- 行注釋,只用來(lái)注釋
//ResultInfo resultInfo = orderService.orderStateUpdate(voucherNo);
- 行注釋,用來(lái)解釋
private int categoryId = 1; // 1 是頂級(jí)分類的 ID
Mysql 相關(guān)命名、規(guī)范
-
表名:全部小寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的使用下劃線隔開(kāi),
eg:prd_category -
字段名:全部小寫(xiě),需要兩個(gè)、多個(gè)單詞表達(dá)的使用下劃線隔開(kāi),
eg:category_name -
注釋:
- - -注釋示例
- 常用數(shù)據(jù)庫(kù)對(duì)象命名規(guī)則表 :
| 數(shù)據(jù)庫(kù)對(duì)象 | 對(duì)象命名前綴 | 習(xí)慣用法 | 備注 |
|---|---|---|---|
| 表 | tb_ | 表名中單詞使用單數(shù)長(zhǎng)度不能超過(guò)30個(gè)字符 | |
| 主鍵 | pk_ | pk_表名 | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
| 外鍵 | fk_ | fk_表名、字段名 | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
| 唯一鍵 | uk_ | uk_表名、字段名 | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
| Check約束 | ck_ | ck_表名、字段名 | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
| 索引 | idx_ | idx_表名、字段名 | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
| 視圖 | v_ | 長(zhǎng)度不能超過(guò)30個(gè)字符 | |
| 觸發(fā)器 | tri_ | 長(zhǎng)度不能超過(guò)30個(gè)字符 | |
| 函數(shù) | func_ | 長(zhǎng)度不能超過(guò)30個(gè)字符 | |
| 序列 | seq_ | 長(zhǎng)度不能超過(guò)30個(gè)字符 |
- 程序 SQL 補(bǔ)丁文件命名,eg:
20160306-update-更新所有會(huì)員密碼20160312-delete-刪除指定會(huì)員密碼20160313-insert-新增會(huì)員數(shù)據(jù)20160315-alter-更新會(huì)員郵箱字段長(zhǎng)度
編碼規(guī)范
- 數(shù)據(jù)源連接:
jdbc:mysql://localhost:3306/youshop?characterEncoding=utf-8 - Java 文件編碼:
UTF-8 - XML 文件編碼:
UTF-8 - Properties 文件編碼:
UTF-8 - Mysql 字符集:
UTF-8
其他
- Tab 縮進(jìn)為 4 個(gè)空格,使用 IntelliJ IDEA 標(biāo)準(zhǔn)格式化即可
- TODO 標(biāo)記必須使用個(gè)人自定義 TODO,不能使用公共的
- SVN、Git 提交必須有 Commit Message
本文摘自:YouMeek