包名的命名規(guī)范(Package)
推薦使用公司或機(jī)構(gòu)的頂級(jí)域名作為包名的前綴,所使用的包名的唯一性。包名的命名必須全部為小寫字母,且具有實(shí)際的區(qū)分意義。
結(jié)合應(yīng)用分層,Web層(頁面控制action類),Service層(業(yè)務(wù)處理)、Dao層(數(shù)據(jù)庫訪問),關(guān)于模塊的訪問操作,采用分層形式,一般分為:
Dao層操作:使用dao做后綴。
Service層操作:使用servie做后綴。
Web層操作:使用action做后綴。
類名的命名規(guī)范(Class)
類名必須使用駝峰式命名,且具有實(shí)際的區(qū)分意義。結(jié)合應(yīng)用分層,Web層(頁面控制action類)、Service層(業(yè)務(wù)處理)、Dao層(數(shù)據(jù)庫訪問),每一層類的名稱需要以對(duì)應(yīng)層作為后綴,如下。
Dao層
Dao層接口類:一般采用"實(shí)體對(duì)象+nterface+Dao"的命名形式。
Dao層接口實(shí)現(xiàn)類:一般采用"實(shí)體對(duì)象+Interface+Impl+Dao"的命名形式。
Service層
Service層接口類:一般采用"模塊+Interface+Service"的命名形式。
Service層接口實(shí)現(xiàn)類:一般采用"模塊+Interface+Impl+Service"的命名形式。
Web層
Web層實(shí)現(xiàn)類:一般采用"模塊+操作+Action"的命名形式。
實(shí)體類的命名規(guī)范(Class)
分層領(lǐng)域模型規(guī)約
DO(DataObject):與數(shù)據(jù)庫表結(jié)構(gòu)對(duì)應(yīng),通過DAO層向上傳輸數(shù)據(jù)源對(duì)象。
DTO(DataTransferObject):數(shù)據(jù)傳輸對(duì)象,Service或Manager向外傳輸?shù)膶?duì)象。
BO(BusinessObject):業(yè)務(wù)對(duì)象,由Service層輸出的封裝業(yè)務(wù)邏輯的對(duì)象。
AO(ApplicationObject):應(yīng)用對(duì)象,在Web層與Service層之間抽象的復(fù)用對(duì)象模型,極為貼近展示層,復(fù)用度很低。
VO(ViewObject):顯示層對(duì)象,通常是Web向模板渲染引擎層傳輸?shù)膶?duì)象。
Query:數(shù)據(jù)查詢對(duì)象,各層接收上層的查詢請(qǐng)求,超過2個(gè)參數(shù)的查詢封裝,禁止使用Map類傳輸。
領(lǐng)域模型類名命名規(guī)約
數(shù)據(jù)對(duì)象:xxxxDO,xxxx為數(shù)據(jù)表名。
數(shù)據(jù)傳輸對(duì)象:xxxxDTO,xxxx為業(yè)務(wù)領(lǐng)域相關(guān)的名稱。
展示對(duì)象:xxxxVO,xxxx一般為網(wǎng)頁名稱。
POJO是DO/DTO/BO/VO的統(tǒng)稱,禁止命名成xxxxPOJO。
Service/DAO層的方法命名規(guī)約
插入的方法命名使用insert或save做前綴。
刪除的方法命名使用delete或remove做前綴。
修改的方法命名使用update做前綴。
獲取單個(gè)對(duì)象的方法命名使用get做前綴。
獲取多個(gè)對(duì)象的方法命名使用list做前綴,復(fù)數(shù)結(jié)尾。
獲取統(tǒng)計(jì)值的方法命名使用count做前綴。
以上就是深圳達(dá)內(nèi)教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java技術(shù)學(xué)習(xí)篇,java包名命名規(guī)范”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。