(完整word版)Web應(yīng)用開發(fā)規(guī)范_第1頁
(完整word版)Web應(yīng)用開發(fā)規(guī)范_第2頁
(完整word版)Web應(yīng)用開發(fā)規(guī)范_第3頁
(完整word版)Web應(yīng)用開發(fā)規(guī)范_第4頁
(完整word版)Web應(yīng)用開發(fā)規(guī)范_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、色中航國(guó)際金網(wǎng)公司AVICIFPreferences-General-Workspace,右側(cè)的Textfileencoding中從other中選擇UTF-8。(2)、資源文件采用ISO-8859-1編碼。(3)、.java、.jsp、.cs球.js等文件采用UTF-8作為文件默認(rèn)編碼。其他文件,【推薦】采用UTF-8作為文件默認(rèn)編碼。Eclipse中的設(shè)置方式:Window-Preferences-General-ContentTypes,點(diǎn)擊右側(cè)的Text下的JavaSourceFile,在Defaultencoding中輸入U(xiǎn)TF-8,保存。2.目錄結(jié)構(gòu)規(guī)范WebZ用Isrc/main/

2、java1cn.eavic.工程名小I模塊名小Iaction存放action類Idao存放dao類Ientity存放實(shí)體類1service存放Service接口1impl存放Service實(shí)現(xiàn)Isrc/main/resource存放該web應(yīng)用所需的資源文件和配置文件Isrc/main/test存放service類的單元測(cè)試類|doc存放該web用相關(guān)的一些文件IdbI工作計(jì)劃技術(shù)文檔Web應(yīng)用開發(fā)規(guī)范-5-需求文檔WebRoot色中航國(guó)際金網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-6-a中航國(guó)際金網(wǎng)公司|common存放該應(yīng)用的通用jsp(403.jsp、404.jsp、500.jsp、meta.jsp、t

3、aglib.jsp)Icss存放該應(yīng)用的css樣式文件Ijs存放該應(yīng)用的js腳本文件Iimages存放該應(yīng)用的圖片文件WEB-INF卜content存放各個(gè)功能模塊的jsp頁面Lweb.xml應(yīng)用的web.xml1pom.xml3.編程規(guī)范Web應(yīng)用主要分如下幾層:url訪問、JSP中form提交、ajax調(diào)用Dao層數(shù)據(jù)庫資源、配置文件src/main/resource中存放資源文件、配置文件等。Web應(yīng)用開發(fā)規(guī)范-7-資源文件:(1)、資源文件的命名:資源文件命名如下:自定義名稱語種國(guó)家.properties例如:色中航國(guó)際金網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-8-globalMessages_en

4、_US.properties。(英文)globalMessages_zh_CN.properties。(中文)(2)、資源文件內(nèi)部條目的命名原則:全部是小寫字母。用圓點(diǎn)分割的三個(gè)部分組成:功能模塊名.類別.自定義部分,針對(duì)每一個(gè)部分,若是由多個(gè)單詞組成,則用下劃線進(jìn)行分割。其中“類別”部分的內(nèi)容如下:?菜單相關(guān):menu?標(biāo)題相關(guān):title?按鈕顯示文字相關(guān):button?提示文字相關(guān):alert?警告文字相關(guān):warn?確認(rèn)文字相關(guān):confirm?消息文字相關(guān):message?屬性字段相關(guān)的定義:field?驗(yàn)證相關(guān)的定義:validate?其他很難歸類的定義:label示例:syste

5、m.field.last_update_date=最后更改時(shí)間。配置文件:指Spring配置文件、acegi配置文件、struts配置文件、數(shù)據(jù)庫鏈接池配置文件等。Spring配置文件的命名為:applicationContext|_自定義部分.xml。acegi配置文件的命名為:applicationContext_security.xml。struts配置文件的命名為:struts.xml。數(shù)據(jù)庫鏈接池配置文件的命名為:proxool.xml。Doc 文檔存放本web應(yīng)用相關(guān)的文檔,根據(jù)項(xiàng)目情況,工作計(jì)劃、數(shù)據(jù)庫、需求等有變化時(shí),要求做到文檔同步更新。(1)、doc/db:必須要有db.c

6、hangelog.txt文檔,其內(nèi)容為:數(shù)據(jù)庫創(chuàng)建SQL,后期變更記錄,按照時(shí)間正序排放,參考如下樣例:G中航國(guó)際金網(wǎng)公司AVIChTJWTimN-HC.Web應(yīng)用開發(fā)規(guī)范/*創(chuàng)建數(shù)據(jù)庫SQL人員:xxx日期:2009-10-01*/createtableUSERS(PASSWORDvarchar(20),NAMEvarchar(20),EMAILvarchar(30);createtableROLES(NAMEvarchar(20)notnullunique);/*人員:xxx日期:2009-10-01altertablexaddcolumnyvarchar(1000)defaultnull

7、;/*實(shí)體:x.java數(shù)據(jù)表名:x人員:xxx操作:修改記錄對(duì)原有數(shù)據(jù)是否有影響:是日期:2009-10-23*fupdatexsety=001whereid=334323updatexsety=002whereid=355431updatexsety=006whereid=321114updatexsety=008whereid=543233(2)doc/技術(shù)文檔:存放開發(fā)規(guī)范及本應(yīng)用所需技術(shù)幫助參考等。(3)doc/開發(fā)計(jì)劃:存放本web應(yīng)用的開發(fā)計(jì)劃。(4)doc/需求文檔:存放本web應(yīng)用的需求文檔。實(shí)體映射數(shù)據(jù)庫中的表,并在各層之間傳遞數(shù)據(jù)。(1)、采用注解的方式來進(jìn)行映射該實(shí)體和

8、數(shù)據(jù)庫表。(2)、必須繼承自公司框架的cn.eavic.framework.entity.BaseEntity類。(3)、實(shí)體的命名要接近或等價(jià)于數(shù)據(jù)庫表名,名稱中具有面向?qū)ο蟮奶攸c(diǎn)。(4)、類定義時(shí),必須添加Entity、SequenceGenerator、Table、Cachel簽。IDintegerprimarykeyGENERATEDALWAYSASIDENTITYLOGIN_NAMEvarchar(20)notnulluniqueIDintegerprimarykeyGENERATEDALWAYSASIDENTITY實(shí)體:x.java數(shù)據(jù)表名:x操作:新增字段對(duì)原有數(shù)據(jù)是否有影響:無

9、*/G中航國(guó)際金網(wǎng)公司AVIChTJWTimN-HC.Web應(yīng)用開發(fā)規(guī)范(5)、各成員的排放順序?yàn)椋撼蓡T屬性。屬性的set、get方法。自定義方法。重載自O(shè)bject的方法如toString(),hashCode(),equals()。-7-網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-11-(6)、屬性定義時(shí),加/注釋,其中包含其中文含義,字段的類型及長(zhǎng)度;若有必要的話也要描述其常量取值范圍。(7)、常用annotation注解及其使用規(guī)范,參見annotation使用規(guī)范.doc。Dao負(fù)責(zé)數(shù)據(jù)庫操作,完成實(shí)體的保存、讀取等。所有的數(shù)據(jù)庫操作都在這層完成,不允許在其他層進(jìn)行數(shù)據(jù)庫操作(1)、類定義時(shí),必須添加

10、Repository標(biāo)簽。(2)、必須繼承自公司框架中的cn.eavic.framework.orm.hibernate.GenericDao類。該基類中已定義了基本的增、刪、改、查操作,能滿足大部分需求。(3)、對(duì)于方法的命名:常用方法按照如下統(tǒng)一命名:參照GenericDao中的方法命名。get(PKid):讀取指定ID的實(shí)體。save(Tentity):保存指定實(shí)體。delete(-):刪除實(shí)體。find(-)、findAll(-)、findPage(-):查找。其余方法根據(jù)情況自定,但是必須滿足代碼書寫基礎(chǔ)規(guī)范.doc中所定義的方法的命名規(guī)范。Service業(yè)務(wù)處理層,負(fù)責(zé)業(yè)務(wù)處理過程

11、,通過Transactional標(biāo)簽添加了事務(wù)處理能力,每個(gè)方法都是事務(wù)控制的,若子方法還未開啟事務(wù),則spring自動(dòng)開啟事務(wù),若父方法(調(diào)用方)已存在事務(wù),則spring自動(dòng)接管該事務(wù)。(1)、接口:必須繼承自公司框架的cn.eavic.framework.service.GenericManager接口。接口的命名方式:實(shí)體名+Manager,例如:UserManager。(2)、實(shí)現(xiàn)類:必須繼承自公司框架的cn.eavic.framework.service.impl.GenericManagerImpl類。實(shí)現(xiàn)類的命名方式:實(shí)體名+ManagerImpl,例如:UserManager

12、Impl。必須放于子包impl中。(3)、實(shí)現(xiàn)類定義時(shí),必須添加Service和Transactional標(biāo)簽。(4)、通過Autowired自動(dòng)注入相應(yīng)的dao。(5)、優(yōu)先使用基類提供的方法完成操作。(6)、對(duì)數(shù)據(jù)庫的操作,要交給dao層完成。(7)、必須對(duì)傳入的參數(shù)進(jìn)行合法性驗(yàn)證。(8)、對(duì)于具有事務(wù)特點(diǎn)的業(yè)務(wù)處理過程,必須放在一個(gè)方法中來執(zhí)行。Web應(yīng)用開發(fā)規(guī)范-12-角中航AWCIMTOMTKKM.E-SUServicelService2Service3(9)、對(duì)于僅查詢而不修改數(shù)據(jù)的方法(即不參與數(shù)據(jù)庫的修改),建議在方法定義上添加Transactional(readOnly=tr

13、ue)標(biāo)簽。(10)、是否采用接口開發(fā),根據(jù)項(xiàng)目情況由項(xiàng)目架構(gòu)師決定。(11)、方法的命名:常用方法按照如下統(tǒng)一命名:getXXX(.):獲得某實(shí)體。示例:getUser(Longid)。findXXX(.):根據(jù)條件獲得實(shí)體列表。deleteXXX(.):刪除某實(shí)體。saveXXX(.):保存某實(shí)體。其余方法參照上面常規(guī)方法命名,并且要滿足代碼書寫基礎(chǔ)規(guī)范.doc中定義的方法的命名規(guī)范。(12)、常用annotation注解及其使用規(guī)范,參見annotation使用規(guī)范.docAction(1)、命名規(guī)范:實(shí)體名+Action,例如UserAction。(2)、若action是“增、刪、改、

14、查”型,則必須繼承自公司基礎(chǔ)框架的抽象類:cn.eavic.framework.web.BaseAction。并且必須實(shí)現(xiàn)BaseAction的抽象方法:list()、prepareModel()、input()、delete()、save()。(3)、命名空間Namespace定義:根據(jù)項(xiàng)目和模塊實(shí)際情況進(jìn)行定義。(4)、方法的命名:常用方法按照如下統(tǒng)一命名:list():進(jìn)入列表。際金網(wǎng)公司圖中紅色表示已經(jīng)處于同一個(gè)事務(wù)處理中O色中航國(guó)際金網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-13-prepareModel():進(jìn)入input()和save()方法之前,且ongl封裝數(shù)據(jù)前進(jìn)入的方法??筛鶕?jù)實(shí)際情況拆

15、分成preporeInput()、preporeSave()方法分別表示進(jìn)入input()和save()前執(zhí)行的方法。input():進(jìn)入編輯、查看頁面。save():新增、修改后的保存。delete():執(zhí)行刪除。batchDelete():批量刪除。其余方法根據(jù)代碼書寫基礎(chǔ)規(guī)范.doc中定義的方法的命名規(guī)范來命名。(5)、采用Convention插件實(shí)現(xiàn)零配置文件。Convention的使用方法,參見公司wiki:中文:14/wiki/index.php/Convention%E4%BB%8B%E7%BB%8D英文:http:/192.168.102.

16、114/wiki/index.php/Convention_Plugin(6)、所用到的service,必須通過Autowired自動(dòng)注入。(7)、若有分頁,貝UPage定義為默認(rèn)10行。(8)、關(guān)于異常處理,參見本文檔第4部分“異常處理規(guī)范”部分。JSP(1)、WebRoot/common文件夾中存放的jsp為通用jsp,例如:403.jsp、404.jsp、500.jsp、meta.jsp、taglibs.jsp等。(2)、jsp頁面中的meta部分,通過引入meta.jsp完成。(3)、jsp頁面中的標(biāo)簽(s、c、e等標(biāo)簽),統(tǒng)一放入taglibs.jsp。(4)、異常頁面應(yīng)該設(shè)計(jì)成具有

17、友好提示、隱藏異常細(xì)節(jié)的頁面。(5)、javascript腳本盡量不直接寫在jsp文件中,而是寫入相應(yīng)的js文件,并引入它。(6)、頁面中盡量采用標(biāo)簽的方式,而不是使用!方式。(7)、jsp中的js和css文件和圖片文件的引用路徑、action路徑等必須為絕對(duì)路徑,而非相對(duì)路徑,例如:link/-iscript-iscriptsrcsrc= =r r3 3cc/JS/J.js.js,r,rtype=type=FFFFt te eJTJdjtdjti i全局網(wǎng)站根目錄fonsr.ane,rjnr*utFojjsacij|/E:JF”:Jjkku凸一”擋丁冷已?.口=4渺tietI全局網(wǎng)站根目錄命

18、含空間Action名稱及調(diào)用方法(8)、文件命名規(guī)則:全部是小寫字母,單詞間加橫杠分割。色中航國(guó)際金網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-14-列表頁面為action前綴名稱。示例:若action的名稱為AccompanyApplyAction,則列表頁名稱為accompany-apply.jsp錄入、編輯頁面為action前綴名稱+橫杠+input。示例:若action的名稱為AccompanyApplyAction,則錄入、編輯頁名稱為accompany-apply-input.jsp際金網(wǎng)公司W(wǎng)eb應(yīng)用開發(fā)規(guī)范-15-其他頁面跟action中所執(zhí)行方法的return字符串有關(guān),只要保持一致即示例:若action的名稱為AccompanyApplyAction,部分內(nèi)容為:publicStringview()throwsException(returnview-detail則程序執(zhí)行完view方法后所進(jìn)入的jsp頁面為accompany-apply-view-detail.jsp。css本應(yīng)用所用樣式統(tǒng)一放入css.css羊式文件,jsp中不建議另寫樣式??筛鶕?jù)實(shí)際情況有多個(gè)css樣式文件。js不鼓勵(lì)在jsp頁面中直接寫javascript腳本,除非必要,盡量將通用的腳本放入js.js文件中,不同模塊所用的js文件可以獨(dú)立成js文件。4.異常處理規(guī)范(1)、

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論