一、引言

  其实按道理来说,学习Java web应该在前面的篇幅就写有关tomcat相关的知识点,不过近期看了一些资料,觉得以前仅仅只是知道用tomcat去发布我的项目,一些细节的东西也没有好好总结,这里从新写一篇进行tomcat知识点的总结。

二、Tomcat的结构

  网上看到一张图片很好的涵盖了Tomcat的结构:

  我们从图中可以直观的看出Tomcat的内部构成主要有这几个角色:

  • context主机中的应用名称
  • localhost主机域名,通过dns文件【hosts】进行解析
  • virtualhost虚拟主机域名,同样可以通过dns文件【hosts】进行解析
  • connector 连接器,由指定端口号所对应的程序通过指定访问协议所创建的连接对象。
  • service 对外提供的服务
  • server 服务器

  简单了解了Tomcat的主要构成,现在我们详细的去了解一下每个角色是干什么用的~

context

  context就是我们发布在tomcat里面的应用实例,我们开发完成的项目,如果直接发布在tomcat上运行的话,一般打成一个war包放到tomcat的webapps目录下。

localhost

host文件【dns映射】

  主机域名,通过dns来解析出具体的主机ip地址,我们可以看一下c:\windows\system32\drivers\etc路径下的hosts文件:

  PS:localhost一般特指本地主机,127.0.0.1又称为回送地址,表示本机,无论是否连接网络,均可访问

server.xml【Tomcat服务器配置】

  • appBase :主机所对应的目录。PS:这个目录是相对于Tomcat安装目录的相对路径
  • autoDeploy :是否自动部署。为true时,当我们把项目放到webapps目录下时,会自动部署到服务器,由Tomcat
  • name :主机名,即我们说的域名
  • unpackWARs :是否自动解压war包。为ture则会自动解压

PS:localhost一般特指本地主机,127.0.0.1又称为回送地址,表示本机,无论是否连接网络,均可访问

虚拟目录【配置应用访问地址】

方式1:配置<Context/>标签

  • path : 指定在当前主机域名下访问该应用的URI
  • docBase : 指定应用目录的路径

  当我们按照上图的方式配置<Context>标签以后,重启Tomcat就可以通过/designMode来访问E盘下的designMode项目了。

  PS:这种方式配置需要重启Tomcat才能生效

方式2:在主机目录中配置

  PS:这种方式配置不需要重启Tomcat就能生效

virtualhost

  virtualhost又叫虚拟主机,通常是用一台主机虚拟出多个域名进行映射的一种方式。

  使用方式:

connector

  connector主要是用于接收http请求并解析http请求,然后将请求交给servlet容器的中间件。

service

  service是对外提供服务的,我们可以把它看成是对外提供服务的一个平台独立,低耦合,自包含的、可编程的web的应用程序

server

  server就是服务器主体,这里我们特指Tomcat容器本身,我们开发的成品就是要部署到服务器上面才可以对外打开,让用户进行访问。

Java Web学习(十二)Tomcat核心的更多相关文章

  1. java web学习总结(二) -------------------TOMCAT使用帮助(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  2. java web 学习十二(session)

    一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...

  3. JAVA WEB学习笔记(二):Tomcat服务器的安装及配置

    一.Tomcat的下载及安装. 前往Tomcat官网下载安装包或者免安装压缩包.链接http://tomcat.apache.org/ 这里,我选择的是Tomcat8.0,而不是最新的Tomcat9. ...

  4. java web学习总结(二十九) -------------------JavaBean的两种开发模式

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...

  5. java web学习总结(二十二) -------------------简单模拟SpringMVC

    在Spring MVC中,将一个普通的java类标注上Controller注解之后,再将类中的方法使用RequestMapping注解标注,那么这个普通的java类就够处理Web请求,示例代码如下: ...

  6. java web学习总结(二十) -------------------监听器属性详解

    一.监听域对象中属性的变更的监听器 域对象中属性的变更的事件监听器就是用来监听 ServletContext, HttpSession, HttpServletRequest 这三个对象中的属性变更信 ...

  7. java web学习总结(三) -------------------TOMCAT使用帮助(二)

    一.打包JavaWeb应用 在Java中,使用"jar"命令来对将JavaWeb应用打包成一个War包,jar命令的用法如下:

  8. java web学习总结(二十八) -------------------JSP中的JavaBean

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  9. java web学习总结(二十六) -------------------JSP属性范围

    所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围. 一.JSP属性范围 JSP中提供了四种属性范围,四种属性范围分别指以下四种: 当前页:一个属性只能在一个页面中取得 ...

  10. java web学习总结(二十五) -------------------JSP中的九个内置对象

    一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...

随机推荐

  1. idea git拉取、合并、处理冲突、提交代码具体操作

    早在两个月前我还在用eclipse开发,并且也发布的一些eclipse git的相关操作(操作都是本人亲自实践过的),但由于项目团队要求,开发工具统一用idea,实在不得已而为之切换了开发工具, 初次 ...

  2. Hive 常见面试题(一)

    面试题: hive 内部表和外部表的区别? hive 是如何实现分区的? Hive 有哪些方式保存元数据,各有哪些优缺点? hive中order by.distribute by.sort by和cl ...

  3. ClickHouse和他的朋友们(9)MySQL实时复制与实现

    本文转自我司大神 BohuTANG的博客 . 很多人看到标题还以为自己走错了夜场,其实没有. ClickHouse 可以挂载为 MySQL 的一个从库 ,先全量再增量的实时同步 MySQL 数据,这个 ...

  4. Java面试题(Redis篇)

    Redis 179.redis 是什么?都有哪些使用场景? Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. ...

  5. 面试中的这些点,你get了吗?

    一.前言 因为疫情的原因,小农从七月份开始找工作,到现在已经工作了一个多月了,刚开始找工作的时候,小农也担心出去面试技能不够,要懂的东西很多,自己也准备可能会面试一段时间,从找工作到入职花了十几天,总 ...

  6. 23种设计模式 - 对象性能(Singleton - Flyweight享元)

    其他设计模式 23种设计模式(C++) 每一种都有对应理解的相关代码示例 → Git原码 ⌨ 对象性能 面向对象很好地解决了"抽象"的问题,但是必不可免地付出一定的代价.对于通常情 ...

  7. vue + vant 上传图片之压缩图片

    <van-uploader v-model="fileList" multiple :after-read="afterRead" :max-count= ...

  8. 【Android】SwipeRefreshLayout的简单使用教程。下拉刷新控件炫酷效果。

    作者:程序员小冰,GitHub主页:https://github.com/QQ986945193 新浪微博:http://weibo.com/mcxiaobing 首先给大家看一下我们今天这个最终实现 ...

  9. CET-4 Word 计划表

    a {text-decoration: none} CET-4 计划表 Sun Mon Tue Wed Thu Fri Sat 9/1 List-1 9/2 List-2 *List-1 9/3 Li ...

  10. Visual Studio Installer闪退问题解决方法

    Visual Studio 2019安装推荐的方式是通过官方给的Installer进行的(2017也是同样方法),但是有时会出现在”即将完成…一切即将准备就绪“这个界面闪退的问题,导致软件的安装.卸载 ...