1. 程式人生 > >Java Web 專案目錄規範

Java Web 專案目錄規範

浪費了“黃金五年”的Java程式設計師,還有救嗎? >>>   

大型專案應劃分多個工程(project,模組),每個工程的目錄結構也同樣遵從相同約定。

各目錄的內容/用途如下:

目錄

用途

src/main/java

Application /Library 的java原始碼(再分package)

src/main/flex

增加:flex原始碼,包含mxml定義、assets和as指令碼

src/main/resources

Application/Library 的資原始檔,如多字符集boundle,點陣圖,配置檔案等(單獨建立conf等子目錄)

src/main/resources/conf

增加:準備封到JAR包中的配置檔案(預設包下conf/目錄)

src/main/filters

【暫不用】Resource filter files

src/main/assembly

【暫不用】Assembly descriptors

src/main/config

【暫不用】maven配置檔案

src/main/webapps

Web 應用的網頁,WEB-INF目錄等所在,詳見本表下方說明

 

 

src/test/java

單元測試的原始碼

src/test/resources

測試使用的資原始檔,如整合測試指令碼等

src/test/resources/conf

增加:測試用例需要的配置檔案

src/test/filters

【暫不用】Test resource filter files

src/site

【暫不用】Site

 

 

target

maven編譯目錄,包含中間過程檔案和最終的工件(如jar)

 

 

pom.xml

Maven工程的配置檔案,以此控制maven構建行為

LICENSE.txt

產品/本工程的版權資訊檔案

README.txt

產品/本工程的說明檔案

 

為規範war包結構,對src\main\webapp目錄做如下約定:

目錄

存放內容

css

存放.css格式檔案(可再分目錄)

skins

存放面板檔案(按主題劃分的framework的點陣圖)

images

存放圖片,按產品、功能模組劃分子目錄

js

JavaScript檔案(物件、函式庫)

include

存放被包含的JS檔案片段【注:JSP檔案互相不要包含,通過模板/元件/標籤庫/BEAN實現重用】

resources

存放JSF元件、相關資源等

templates

模板檔案存放地,按類別劃分子目錄

pages

網頁目錄(靜態和動態網頁,除index.jsp),按產品、功能模組劃分子目錄

webapp下其他目錄

解釋為模組名,認為其中全部為網頁,可再分子目錄

META-INF

存放清單檔案、services等配置資訊

WEB-INF

網站配置檔案目錄,存放WEB.XML等配置資訊

WEB-INF/classes

未打包的專案編譯程式碼,禁止手工修改。

WEB-INF/conf

存放struts,spring,hibernate,JSF等的配置檔案

WEB-INF/lib

存放第三方JAR包,使用MAVEN構建時此目錄禁止手動放入檔案!

WEB-INF/pages

高安全性的網頁目錄,如登入資訊維護等

WEB-INF/tld

JSP標籤庫定義檔案存放目錄