关于Tomcat的一些基础梳理

目录
  1. B/S的交互模型
  2. Tomcat的组成结构

B/S的交互模型

在这里插入图片描述
比如说:客户像服务器请求一个页面,希望页面返回他传入数字的平方。当客户端把数据(那个数字)和请求提交给Web服务器后,服务器会把该请求,分配到Web应用中的某一个Java程序去处理,然后该程序会返回给服务器一个页面,该页面上会显示进行了处理后的数据(让客户端传过来的数进行平方运算),最后服务器把页面发送给客户端。


我们来看图中三种对象,都分别做了什么事情
客户端:①发送请求。②接受响应。
Web服务器:①把请求交给具体的程序去处理。②得到程序处理后的结果。
Web应用:①接受原始数据。②处理数据并返回给服务器。

那么这么对象在使用中的真实实例有哪些?
首先客户端,在B/S架构中无疑就是浏览器。
Web服务器专门用来处理HTTP请求,常见的就是我们说的Tomcat,Apache和Nginx。
Web应用就是我们用来处理数据的Java程序。

服务器和应用之间,往往是不同是人去开发,为了让这2个系统协作运转,就需要制定一个标准。而这个标准,就是SUN公司的Servlet接口,同时SUN公司也规定了其它一些制约,合称为Servlet规范。有了这个标准,我们的web应用只需要去实现Servlet接口,而服务器只需要调用实现Servlet接口的类,就可以完成交互了。
这就是为什么我们把处理数据的程序,也叫Servlet程序,就是因为他们都需要实现Servlet接口。而这个Java项目(web应用)存放的地方,也可以被称为Servlet容器。

而Tomcat,既有Web服务器组件,又有Servlet组件,所以上面的图可以画成这个样子:

在这里插入图片描述

Tomcat的组成结构

在这里插入图片描述
在这里插入图片描述
从客户端过来的请求,首先要和Tomcat做一个连接,这就是由我们的连接器——Connector去做的。获得连接后,服务器得到的是HTTP格式的请求对象,还将被适配器转换成servletRequest对象,继而能够交给我们的容器去进行处理。
也就是说我们把整个Tomcat都看成一个server(服务器+javaweb应用),连接器的部分负责进行HTTP连接,而容器部分进行对servlet的管理。通过查看Tomcat中conf目录下的server.xml。也可以看出其组成结构。
我们通过一个例子来看一下一个请求是如何被执行的。假设客户端请求了
http://127.0.0.1:8080/,他之所以能访问到是因为:
1.我们在<Connector>中设置了Tomcat服务的监听端口为8080,并且该服务位于127.0.0.1这台计算机上,且使用的协议是HTTP在这里插入图片描述
2.我们的<Engine>会去找一个主机来执行这个操作在这里插入图片描述
可以看出,他默认找是名字叫"localhost"的主机:在这里插入图片描述

也就是说,如果我们直接访问8080端口,不指定项目目录,如:http://127.0.0.1:8080/就会自动使用默认主机,而默认访问的页面则是Host标签appBase属性中写的目录(webapps)下ROOT项目中的index页面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值