java web目錄結構


轉自:http://blog.csdn.net/javaloveiphone/article/details/7828894

Javaweb項目的源文件與字節碼文件的目錄結構

1、新建項目的源文件目錄結構:

|----myProject

|----.settings(文件夾)

       |----.classpath

       |----.project

       |----.mymetadata

       |----src

       |----WebRoot

              |----其他靜態文件:HTML、CSS、JavaScript、圖片、jsp頁面等

              |----index.jsp:頁面可以直接放在根目錄下

              |----META-INF

              |----WEB-INF

                     |---- classes根目錄:存放字節碼文件

                     |----lib目錄:存放第三方類庫文件

                     |-- --web.xml:Web應用部署描述文件,必須目錄

                     |----TLD文件:標簽庫描述文件

相應的解釋:

1、1、.settings文件夾:里面存放各種插件的配置文件。

1、2、.classpath:定義了項目在編譯時所使用的$CLASSPATH,就是配置整個工程運行環境

       <?xml version="1.0" encoding="UTF-8"?>

<classpath>

       <classpathentry kind="src" path="src"/>

       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>

       <classpathentry kind="lib" path="lib/dom4j-1.6.1.jar">

<classpathentry kind="con" path="com.genuitec.eclipse.j2eedt.core.J2EE14_CONTAINER"/>

       <classpathentry kind="output" path="WebRoot/WEB-INF/classes"/>

</classpath>

從數據上我們容易看出,上面描述了工程的依賴文件:

1.  源文件的具體位置(kind="src")

2.  運行的系統環境,JDK運行時容器(kind="con")

3.  工程的library的具體位置信息(kind="lib")

4.  在每個lib的xml子節點中,有關於它的其它配置信息(例如我配置的那個"javadoc_location")

5.  項目字節碼文件的輸出目錄(kind="output")

1、3、.mymetadata:描述項目在myeclipse的配置信息

<?xml version="1.0" encoding="UTF-8"?>

<project-module

  type="WEB"                 工程類型

  name="myProject"             工程名稱

  id="myeclipse.1343985658390"  工程在工作空間內的唯一標識

  context-root="/myProject"       請求的根路徑

  j2ee-spec="1.4"                J2EE標准

  archive="myProject.war">       打包后war文件

  <attributes>

    <attribute name="webrootdir" value="WebRoot" />      Web根目錄名稱

  </attributes>

</project-module>

 

1、4、.project:描述工程信息

<?xml version="1.0" encoding="UTF-8"?>

<projectDescription>

       <!-- 工程名稱 <name>-->

       <name>myProject</name>

       <!--工程注釋描述-->

       <comment></comment>

       <projects>

       </projects>

       <!-- 編譯器指定 <buildSpec>:具體加載方式信息-->

       <buildSpec>

              <buildCommand>

                     <name>com.genuitec.eclipse.j2eedt.core.WebClasspathBuilder</name>

                     <arguments>

                     </arguments>

              </buildCommand>

              <buildCommand>

                     <name>org.eclipse.jdt.core.javabuilder</name>

                     <arguments>

                     </arguments>

              </buildCommand>

              <buildCommand>

                     <name>com.genuitec.eclipse.j2eedt.core.J2EEProjectValidator</name>

                     <arguments>

                     </arguments>

              </buildCommand>

              <buildCommand>

                     <name>com.genuitec.eclipse.j2eedt.core.DeploymentDescriptorValidator</name>

                     <arguments>

                     </arguments>

              </buildCommand>

              <buildCommand>

                     <name>org.eclipse.wst.validation.validationbuilder</name>

                     <arguments>

                     </arguments>

              </buildCommand>

       </buildSpec>

       <!-- 核心特性 <natures> :運行時需要的額外Eclipse插件-->

       <natures>

              <nature>com.genuitec.eclipse.j2eedt.core.webnature</nature>

              <nature>org.eclipse.jdt.core.javanature</nature>

       </natures>

</projectDescription>

 

2、項目的字節碼文件目錄結構:

|----myProject

              |----其他靜態文件:HTML、CSS、JavaScript、圖片、jsp頁面等

              |----index.jsp:頁面可以直接放在根目錄下

              |----META-INF

              |----WEB-INF

                     |---- classes根目錄:存放字節碼文件

                     |----lib目錄:存放第三方類庫文件

                     |-- --web.xml:Web應用部署描述文件,必須目錄

                     |----TLD文件:標簽庫描述文件

 

3、總結:

       通過上面兩個目錄結構的解釋,當項目被編譯之后,已經沒有了src和WebRoot文件路徑,所以當在配置文件中加載某個文件時:

<param-value>/WEB-INF/struts-config.xml</param-value>

<param-value>resource/struts/struts-config.xml</param-value>(resource在源文件src下面)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM