课程介绍

每个web 项目下都具备web.xml 文件。通过前面的学习,我们对web.xml 文件有了一定了解,但是还不够,本节课就web.xml 文件进行总结。同时对Tomcat 下的server.xml 进行介绍。

Web.xml 文件使用总结

作用
存储项目相关的配置信息,保护Servlet(不直接把类名暴露给用户)。解耦一些数据对程序的依赖。

使用位置:
(1)每个Web 项目中
(2)Tomcat 服务器中(在服务器目录conf 目录中)

区别:
Web 项目下的web.xml 文件为局部配置,针对本项目的位置。
Tomcat 下的web.xml 文件为全局配置,配置公共信息。

  • 对于同一个xml元素,如果以上两个配置同时存在,优先使用Web项目下的配置。

web.xml的内容(核心组件):
(1)全局上下文配置(全局配置参数)content-param
(2)Servlet 配置ServletContext
(3)过滤器配置 filter
(4)监听器配置 listener

以上四个配置位置没有顺序,但加载有顺序:
Web 容器会按ServletContext -> context-param -> listener ->filter -> servlet 这个顺序加载组件,这些元素可配置在web.xml文件中的任意位置。

加载时机:
无论是项目内的web.xml还是tomcat里的web.xml,都是在服务器启动时,加载web.xml


server.xml 文件

  • 可以在里面修改端口号

问题:
浏览器发起请求后,服务器根据请求在webapps 目下调用对应的Servlet 进行请求处理。那么为什么是webapps 目录难道不能是其他的目录吗?

解决:
了解server.xml 文件的配置信息

Server.xml 文件核心组件:

<Server><Service><Connector /> <!-- 配置服务器使用的端口号、服务器使用的协议、发送请求的连接时间限制、重定向端口号(如果8080端口有问题,会重定向到8443) --><Connector /> <!-- 8009端口号使用的AJP协议主要用于服务器集群,是好几个服务器联动进行操作 --><Engine> <!-- 一个Service下面只能有一个Engine,里面的appbase配置了默认的项目目录:webapps。Tomcat启动后,service里面的数据监听8080端口(底层代码实现),用户浏览器请求被tomcat服务器拿到,然后根据URI找到项目去匹配。 --><Host><Context /></Host></Engine></Service>
</Server>

热部署:

冷部署:是每次对项目进行了内容修改之后,都需要重启服务器才能看到效果。

热部署:可以设置部署目录,不需要把项目放在webapps下。

<Context path ="/Pet" reloadable ="true" docBase ="F:/PetWeb" />

path写的是项目的虚拟名称
reloadable ="true"表示项目被修改之后自动加载。
docBase配置的路径要精确到webroot路径。

如果项目删了,热部署的路径没删,启动服务器的过程会报错,Tomcat启动失败。

【Servlet】Tomcat公共 / 项目独立的 web.xml / server.xml 文件讲解相关推荐

  1. nacos启动报错 Unable to start embedded Tomcat 以及项目链接nacos报错 server is DOWN now, please try again later!

    一 Unable to start embedded Tomca nacos启动报错如下,原因是没有以单机模式启动. 解决方式 修改nacos启动文件 startup.cmd中下列参数. set MO ...

  2. 手把手教你用JSP+Servlet+Tomcat实现一个最简单的Web应用

    JSP+Servlet+Tomcat实现一个简单的Web应用 需要使用到的技术 ①JSP ② Servlet ③Tomcat Web开发中的常见概念 Demo *本文针对编程务实实验内容,简单演示一下 ...

  3. tomcat配置文件context.xml和server.xml分析

    在tomcat 5.5之前 Context体现在/conf/server.xml中的Host里的<Context>元素,它由Context接口定义.每个<Context元素代表了运行 ...

  4. [转]/tomcat/conf/server.xml配置文件的源码解析

    备注: 在把Java项目直接放到/tomcat/webapps目录下时,server.xml的代码是不变的,端口为8080 你可以通过修改这个8080端口进行配置,以及配置<host>里面 ...

  5. tomcat的server.xml详解

    Tomcat服务器是由一系列可配置的组件构成,其核心组件是Catalina   Servlet容器,它是所有其他Tomcat组件的顶层容器.Tomcat的组件可以在<CATALINA_HOME& ...

  6. Tomcat server.xml配置示例

    转载自    Tomcat server.xml配置示例 几乎所有容器类型的应用都会包含一个名为 server.xml 的文件结构.基本上,其中的每个元数据或者配置都是容器完成初始化所需要的.正是由于 ...

  7. Tomcat在server.xml中配置虚拟目录

    首先,在D盘中新建文件chapter02,然后,在chapter02目录下,新建文件welcome.xml 此时,直接访问是访问不到的 启动Tomcat服务器,在浏览器地址栏中输入 http://lo ...

  8. Docker Centos 7.X部署Tomcat 并且修改Server.xml配置文件方案 并设置时区 只要十一步

    我用的是腾讯云 Centos 7.3版本,使用Docker最好使用7.x以上版本 1.拉取镜像 docker pull tomcat:8 2.创建容器并且挂载webapps的目录(我这里将本地端口映射 ...

  9. tomcat idea项目访问、下载web项目外的静态资源(图片、文件),js下载项目外的文件,server.xml设置对idea中的项目不生效

    读取项目外的文件,配置Tomcta的虚拟路径,  打开文件:Tomcat/conf/server.xml  修改文件配置: <Host name="localhost" ap ...

最新文章

  1. Ubuntu下修改DNS重启也能用的方法
  2. CPU工作过程——MCU
  3. 学习官方示例 - System.TClass
  4. VS中stack around the variable ‘****‘ was corrupted堆栈被破坏
  5. RGBA和ARGB的区别
  6. 文巾解题 733. 图像渲染
  7. 《18成长,19蜕变》
  8. linux搭建java开发环境_linux中搭建java开发环境
  9. linux shell脚本 定义变量,Shell脚本应用 - 编制shell脚本、shell变量
  10. Linux debian利用ifconfig查看IP地址
  11. androidnbsp;网络联接nbsp;CMWAPnbsp;CTWAP
  12. java语音实现_用JAVA实现语音交互的功能(即语音聊天室的功能)
  13. 免费版xshell下载地址
  14. 基于图像的光照(Image-Based Lighting, IBL)概述
  15. 顶层const和底层const
  16. BSV斯洛文尼亚商业区块链活动精彩回顾
  17. Ubuntu 安装msfconsole
  18. c语言qsort函数的用法与模拟实现
  19. 配网终端加密模块国密算法芯片
  20. DataGrid实现自定义分页,鼠标移至变色,删除确认、可编辑,可删除

热门文章

  1. 2019ICPC(徐州) - Who is better?(中国剩余定理+斐波那契博弈)
  2. XgBoost使用及调参教程
  3. JSP中四种属性范围
  4. QT乱码总结4.细谈本地编码
  5. 对于 CDN 的多元理解
  6. 有理有据!为什么String选择数字31作为hashCode方法乘子?
  7. 恐怖如斯,阿里P9总结的这份Java八股文,已经帮近百人拿到offer了
  8. 曹大带我学 Go(7)—— 如何优雅地指定配置项
  9. Linux线程(三)
  10. Instagram:如何提升音乐音频质量?