从MyEclipse转到Eclipse起初有点不习惯eclipse的目录结构,顺手一查看到的文章帮助很大,转载一下:java
原文连接:https://www.jianshu.com/p/91050dfcbe33web
本文会尽量对 java web 项目的目录结构作出最详细的解释,尽可能作到浅显易懂。spring
Apache Tomcat v7.0 是指这个项目所依赖的服务器(Tomcat)的目录。tomcat
Web App Libraries 是本身导入的项目依赖 jar 包,Web App Libraries 下的全部 jar 包均可以在本地的项目名\WebContent\WEB-INF\lib 中找到。若是你直接在WEB-INF/lib文件夹下,copy 一个 jar 包,刷新一下,会自动编译到 Web App Library 中。服务器
Referenced Libraries 是编译环境下使用的 jar 包, 所谓编译环境下使用的 jar 包, 就是说你在 Eclipse 中进行源文件的编写的时候, 所须要引用到的类都从 Referenced Libraries 这个集合中的 jar 包中拿。这里导入和配置 ja r包,都是为了让 web 工程可以在 eclipse 开发环境能够正常编译,不报错而已。mvc
build:eclipse新建的 Dynamic web project 默认是将类编译在 build 文件夹下。能够在本地的项目名\build\classes 下查看。app
WebContent:通常咱们用 Eclipse 的时候建立一个 Web Project,就会生成 WebContent 文件夹,用 MyEclipse 的时候建立一个 Web Project,就会生成 WebRoot 文件夹,这两个文件夹做用同样只是名称不一样而已。WebContent 用来存放 JSP,JS,CSS,图片等文件,是项目访问的默认路径,也是工程的发布文件夹,发布时会把该文件夹发布到 tomcat 的 webapps 里。eclipse
common:用来存放公用的 JSP,JS,CSS,图片等文件。webapp
META-INF:存放一些 meta information 相关的文件的这么一个文件夹, 通常来讲尽可能不要本身手工放置文件到这个文件夹。jsp
WEB-INF:WEB-INF 目录是一个专用区域, 容器不能把此目录中的内容提供给用户。这个目录下的文件只供容器使用,里面包含不该该由客户直接下载的资源。Web 容器要求在你的应用程序中必须有 WEB-INF 目录。WEB-INF 中包含着发布描述符(也就是 web.xml 文件), 一个 classes 目录和一个 lib目录, 以及其它内容。注意: 若是你的 Web 应用程序中没有包含这个目录, 它可能将没法工做 。
web.xml:发布描述符(deployment descriptors)是 J2EE Web 应用程序不可分割的一部分(也就是说是它的最小部分, 必不可缺的一部分)。它们在应用程序发布以后帮助管理 Web 应用程序的配置。
WEB-INF/classes 目录,编译后的 Java类,这个文件夹是可选的。有一些配置文件须要放到 WEB-INF 的 classes 文件夹下,因此,一般的作法是手动在工程的 WEB-INF 文件夹下创建 classes 文件夹。若是不在工程的 WEB-INF 下手动创建 classes,发布到 tomcat 时 tomcat 里的WEB-INF 中也会有 classes 文件夹。
WEB-INF/lib 目录,该目录中的 jar 包是运行时环境下使用的 jar 包, 所谓运行时环境下使用的 jar 包,就是说你在运行你的项目的时候所须要使用的 jar 包的集合。
index.jsp:首页页面
一张图搞定: