Tomcat服务器中使用WAR包来部署应用时,WAR包的项目结构必须符合一定的标准,一个Web项目目录中包含Web应用程序代码和配置文件以及静态文件等。
项目文件夹结构
为了简化工程的编译和打包步骤,推荐使用下面的项目文件层次结构。
tomcat-webapp
└── src
└── main
├── java - 源代码目录
│ └── com
│ └── demoapp
│ └── Hello.java
├── resources - 资源配置文件
│ └── application.properties
└── webapp
├── 404.jsp - 404jsp页面
├── WEB-INF - 安全目录
│ ├── classes - 已编译的类
│ ├── lib - jar库文件
│ │ └── mysql-connector-java-8.0.8-dmr.jar
│ ├── views - 页面模板
│ │ └── index.mustache
│ └── web.xml - 部署描述文件
├── index.jsp - jsp页面
└── static - 静态资源文件
├── css - css样式资源文件
│ └── demoapp.css
├── fonts - 字体资源文件
├── images - 图像资源文件
│ └── demoapp.png
└── js - JavaScript文件
└── bootstrap.min.js
src/main/java目录下的内容包含您开发的应用程序,即未编译的Java类文件,这些类将被编译成可通过应用程序代码访问的.class文件并置于src/main/webapp/WEB-INF/classes目录中。Java类文件编译完成后,编译好的class文件将被置于webapp/WEB-INF/classes中,并与webapp目录一并被打包部署到服务器上。
webapp根目录文件夹结构
webapp的根目录中存储了HTML页面、JSP页面以及静态资源等内容,这些内容将与WEB-INF一起被打包部署到服务器上。
webapp中除了WEB-INF外的其他内容可通过客户端直接访问,如404.jsp页面和index.jsp页面。static目录中存放CSS样式文件,图片文件和JavaScript文件等可由客户端访问的资源。
webapp
├── 404.jsp
├── WEB-INF
├── index.jsp
└── static
├── css
│ └── demoapp.css
├── fonts
├── images
│ └── demoapp.png
└── js
└── bootstrap.min.js
WEB-INF子目录文件夹结构
webapp目录下的WEB-INF子目录是Java的Web应用安全目录,客户端无法直接访问其中的内容,但服务端可以访问。WEB-INF子目录包含以下内容:
- classes目录:包含您开发的应用程序源码编译后的.class文件。
- lib目录:包含Web应用依赖的各种JAR文件,如数据库驱动JAR文件。
- views目录:包含页面模板文件,例如mustache文件。
- web.xml文件:Web应用配置文件。
WEB-INF
├── classes - 已编译的类
├── lib - JAR库文件
├── views - 页面模板
└── web.xml - Web应用配置文件