在Eclipse中只要创建一个Dynamic Web Project,就可以根据创建向导创建出一个典型Java Web站点的目录结构。除非有特殊需要,在大多数情况下都没有必要修改这个目录结构,这也是Web容器的缺省目录结构,我们只要直接使用即可。一般的目录结构如下:

WebContent                                 (站点根目录)

|---META-INF                           (META-INF文件夹)

|       |---MANIFEST.MF            (MANIFEST.MF配置清单文件)

|---WEB-INF                              (WEB-INF文件夹)

|       |---web.xml                     (站点配置web.xml)

|       |---lib                              (第三方库文件夹)

|       |    |---*.jar                     (程序需要的jar包)

|       |---classes                       (class文件目录)

|            |---...*.class               (class文件)

|---<userdir>                            (自定义的目录)

|       |---*.jsp,*.js,*.css,*images           (自定义的资源文件)

|---<userfiles>                        (自定义的资源文件)

1.WebRoot(WebContent)下是发布到服务器上的内容。

2.META-INF是工程自身相关的一些信息,元文件信息,通常由开发工具,环境自动生成。

3.文件web.xml:完成servlet在web容器的注册。web.xml是Web应用程序的部署描述文件,是用来给Web服务器解析并获取Web应用程序相关描述的。

不按照sun公司的规范做应用web程序的结构,web容器找不到,比如,xml文件写错了,启动tomcat的时候会报错

4.凡是客户端能访问的资源(*.html,*.jpg)必须跟WEB-INF在同一目录。即放在Web根目录下的资源,从客户端是可以通过URL地址直接访问。

5. 切忌:凡是WEB-INF里面的文件都不能被客户端直接访问(比如隐藏的信息)。WEB-INF目录下的资源对用户来说是不可见的,而对Web服务器来说则没有这样的限制。

例如在WEB-INF下的index.htm,客户端无法与对待其他文件夹内的信息一样,通过http://yourserver/yourwebapp/WEB-INF/index.htm访问。WEB-INF文件夹是禁止通过URL访问的。
6. 在WEB-INF目录的classes及lib子目录下,都可以存放Java类文件。在运行时,Servlet容器的类加载器先加载classes目录下的类,再加载lib目录下的JAR文件(Java类库的打包文件)中的类,jar包是许多class文件的集合。因此,如果两个目录下存在同名的类,classes目录下的类具有优先权。

Tomcat固定的目录结构

/bin

存放在Windows平台以及Linux平台上启动和关闭Tomat的脚本文件

/conf

存放Tomat服务器的各种配置文件, 其中最重要的文件是Server.xml

/server

包含3个子目录:classes,lib和webapps

/server/lib

存放Tomat服务器所需的Jar文件

/server/webapps

存放Tomat自带的两个Web应用:admin应用和manager应用

/common/lib

存放Tomat服务器以及所有Web应用都可以访问的Jar应用

/share/lib

存放所有Web应用都可以访问的Jar文件

/logs

存放Tomat的日志文件

/webapps

当发布Web应用时,默认情况下把Web应用文件放于此目录下

/work

Tomcat把由Jsp生成的Servlet放于此目录下

浅析Web工程目录和tomcat目录相关推荐

  1. web工程本地跟tomcat部署导致根路径不一致问题

    如果本地web工程部署本地tomcat后,控制器中获取的文件路径(new FileOutputStream(filePath))不会是工程路径E:\myeclipse\SSHWeb 而是tomcat部 ...

  2. 2020新版IDEA创建Web工程(包括添加Tomcat服务器、第三方jar包)

    1. 添加Tomcat服务器 2020新版IDEA(专业版,学生邮箱可免费试用)在[File]菜单项下点击[Settings]选项. 在新窗口展开[Build, Execution, Deployme ...

  3. linux webapps 目录,Tomcat8下将webapps目录与tomcat目录分离

    引言:在实际的生产环境中,默认情况下会将tomcat目录和时间部署目录进行分离,而非我们在开发环境下的将其放入$CATALINA_HOME/webapps下,那如何来实现这个功能呢?本文将回答此问题. ...

  4. eclipse下面web工程没有src/main目录

    2019独角兽企业重金招聘Python工程师标准>>> 使用maven在eclipse下面建立web目录没有src/main目录,需要到eclipse的java build path ...

  5. tomcat配置虚拟目录,虚拟目录,tomcat目录,tomcat服务器,网站图片虚拟目录

    2019独角兽企业重金招聘Python工程师标准>>> <!-- tomcat->conf->server.xml里面<Host>标签内加该段代码 -- ...

  6. IDEA:将web工程部署到tomcat

    在项目结构中进行部署即可:

  7. IntelliJ IDEA快速入门 | 第三十一篇:在IntelliJ IDEA 2020.3.3中添加Tomcat镜像并部署Web工程

    写在前面 讲完模板以后,咱们来说一下如何在IntelliJ IDEA当中去创建Java Web的工程.这里,我们主要分两种情况来讲,第一种是如何创建静态的Java Web工程,另外一种是如何创建动态的 ...

  8. Eclipse中web项目部署至Tomcat步骤

     Eclipse的web工程至Tomcat默认的部署目录是在工程空间下,本文旨在将部署目录改为Tomcat安装目录,并解决依赖包输出问题. 1.在Eclipse中添加Tomcat服务器. 2.将w ...

  9. 二、STS开发工具安装 + 创建WEB工程

    STS编辑器(集成环境)下载地址: https://download.springsource.com/release/STS4/4.14.0.RELEASE/dist/e4.23/spring-to ...

最新文章

  1. POJ 2104 K-th Number(区间第k大数)(平方切割,归并树,划分树)
  2. ***小程序wx.getUserInfo不能弹出授权窗口后的解决方案
  3. GPT-3获NeurIPS 2020最佳论文奖,苹果华人学者获经典论文奖
  4. [转摘] JSP连接SQL SERVER问题总结
  5. 通过一个实际例子理解Kubernetes里pod的自动scale - 水平自动伸缩
  6. string类有可以调换方向的函数吗_深度剖析C++中的inline函数
  7. xpath 取标签下所有文字内容_对Xpath 获取子标签下所有文本的方法详解
  8. php时间戳本周,php获取今天,昨天,本周,上周,本月,上月的起止时间戳
  9. 柏林噪声双线性插值初步了解(js)
  10. c 语言运算符号大全,c语言运算符号详细说明
  11. 图片传输_一幅图片的奇妙旅行,网络传输分层通信协议原理揭秘
  12. 设计糟糕的 RESTful API 就是在浪费时间!
  13. 浏览器兼容IE内核插件-IE TAB 安装
  14. Cisco路由器密码破解
  15. javaweb项目JSP网上书店购物电商系统毕业设计
  16. windows命令——taskmgr 1
  17. 无数个骂娘的故事告诉你,千万别做技术合伙人
  18. JavaScript学习笔记 06、DOM元素—③定时器与延时器
  19. 2D spine动画 消融
  20. 【英文】当歪果仁说quot;thank youquot;,怎样回答才地道?

热门文章

  1. 易生信高级转录组分析和数据可视化第9期课程开课啦!!
  2. NAR:antiSMASH数据库2—次级代谢物基因簇预测
  3. PICRUSt2:OTU或ASV等16S随便预测宏基因组且数据库增加10倍
  4. NEJM | 益生菌LGG治疗肠胃炎无效,Immunity|LGG促进生骨
  5. 植物微生物组培养与重组技术:从描述性研究走向功能性研究
  6. ValueError: Input contains NaN, infinity or a value too large for dtype(‘float64‘).
  7. python使用matplotlib可视化、使用rcParams参数调整可视化图像中线条宽度、线条类型、文本字体、字体大小、字体颜色、字体类型、文本颜色等
  8. R语言使用ggplot2包使用geom_boxplot函数绘制基础分组箱图(不同分组配置不同的箱体填充色+Brewer调色板)实战
  9. R语言使用ggpubr包的ggarrange函数组合多张结论图:使用ggpubr包在散点图的侧面添加辅助图形、并使用NULL将不需要可视化的侧面留白
  10. 误差分析是什么?如何进行误差分析?分析为了获得什么知识?