java web 的标准目录结构(zz)
http://blog.csdn.net/bluesnail216/article/details/7744607
--yourproject?
???--src ?
?????--java ? 運行的java源代碼?
????--test ? 單元測試的源代碼?
????--configs ?配置文件?
?? --lib ?開發需要的lib(里面通常是運行時不需要的jar)?
?? --build.propertis ? (ant的)?
?? --build.xml ? (ant)?
?? --document ? (項目的設計文檔、數據庫設計文檔等)?
?? --WebRoot?
? ? ?--WEB-INF ?
? ? ???--classes ?
? ? ? ?--lib ? ? ?(運行時需要的jar,當然開發肯定也需要該lib)
? ? ? ?---web.xml?
????--dist ?(打成jar、war的存放路徑)?
????--css ? ?
????--js ? ?
????--view ?(模板文件 。jsp,mv)?
????--images?
1.?公開目錄?
2. WEB-INF/web.xml?文件,發布描述符(必選)?
3. WEB-INF/classes?目錄,編譯后的Java?類文件(可選)?
4. WEB-INF/lib?目錄,Java?類庫文件(*.jar)(可選)?
公開目錄存放所有可以被用戶的訪問的資源,?包括?.html, .jsp, .gif, .jpg, .css, .js, .swf等等。?
WEB-INF?目錄是一個專用區域,?容器不能把此目錄中的內容提供給用戶。這個目錄下的文件只供容器使用,?里面包含不應該由客戶直接下載的資源,?例如: Servlet(這些組件包括應用程序邏輯以及對其他資源如數據庫的可能訪問), Web?應用程序中servlet?可直接訪問的其他任何文件,?在服務器方運行或者使用的資源(如Java?類文件和供servlet?使用的JAR?文件),?由您的應用程序生成的臨時文件,?發布描述符以及其它任何配置文件。這些資源是專用的,?因此只能由它們自己的Web?應用程序及容器訪問。特別地, JSP/Servlet?程序文件也能通過ServletContext?訪問到這個目錄下的文件,?例如JSP?中可以通過application.getRealPath(“/WEB-INF/web.xml”)?訪問到發布描述符文件的路徑。?Web?容器要求在你的應用程序中必須有WEB-INF?目錄。注意:?如果你的Web?應用程序中沒有包含這個目錄,?它可能將無法工作(這是因為不同的服務器對此情況的處理不甚一致,所以有時候也能工作)。?
WEB-INF?中包含著發布描述符,?一個classes?目錄和一個lib?目錄,?以及其它內容。發布描述符(deployment descriptors)是J2EE Web?應用程序不可分割的一部分(也就是說是它的最小部分,?必不可缺的一部分)。它們在應用程序發布之后幫助管理?Web?應用程序的配置。對于?Web?容器而言,?發布描述符是一個名為web.xml?的XML?文件,?存儲在Web?應用程序的?/WEB-INF?目錄下。
發布描述符有多種用途:?
??為?Servlet?和Web?應用程序提供初始化參數?這使我們的Web?應用程序中的硬性編寫的代碼的初始化值更少。例如常見的<param-name>, <param-value>標記,?就可以為Servlet?提供參數,?這個參數可以在init()?方法中加載。?Struts?的ActionServlet也是通過這種方式來找到它們需要的配置文件struts-config.xml?的位置,?從而加載并分析它,來初始化Struts?框架用到的各種FromBean, Action, Forward?等。?
? Servlet/JSP?定義可以為?Web?應用程序中的每個Servlet?或者預編譯的JSP?網頁提供定義。包括?Servlet/JSP?的名字, Servlet/JSP?的類以及一個可選的描述。?
? Servlet/JSP?映射?Web?容器使用這些信息把進入請求映射到servlet?和JSP?網頁。?
? MIME?類型由于每個?Web?應用程序可以包含多種內容類型,?因此我們可以在發布描述符中為每一種類型指定MIME?類型。
??安全性?我們可以使用發布描述符來管理應用程序的訪問控制。例如,?可以指定我們的Web?應用程序是否需要登錄,?如果需要的話,?應該使用什么登錄頁面,?以及用戶會作為何種角色。發布描述符還可以用來自定義其他元素,?包括歡迎網頁,?出錯網頁,?會話配置。classes?目錄用于存儲編譯過的servlet?及其它程序類,?例如JavaBean。如果一個程序有打包的JAR?文件(例如一個第三方API?打包成了一個JAR?文件,?如Struts?框架的類庫?
struts.jar, MySQL?的數據庫JDBC?驅動程序文件mysql-connector-java-3.1.11-bin.jar?等),那么它們可以被復制到lib?目錄中(如果解壓縮這些壓縮包的話,?請將它們復制到classes?目錄中)。?Web?容器使用這兩個目錄來查找servlet?及其他相關類,也就是說,?容器的類裝入器會自動查看classes?目錄,?以及lib?目錄下的JAR?文件。這就意味著你不需要明確的把這些類和JAR?文件添加到CLASSPATH?中。?Web?容器自動將這兩個目錄中的文件加入Web應用的類路徑中。
轉載于:https://www.cnblogs.com/strinkbug/p/4897024.html
總結
以上是生活随笔為你收集整理的java web 的标准目录结构(zz)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 高级软件工程课程第二次作业
- 下一篇: linux下踢出已登录用户