一、Tomcat与Servlet之间的关系
Tomcat 是Web应用服务器,是一个Servlet/JSP容器. Tomcat 作为Servlet容器,负责处理客户请求,把请求传送给Servlet,并将Servlet的响应传送回给客户.而Servlet是一种运行在支持Java语言的服务器上的组件. Servlet最常见的用途是扩展Java Web服务器功能,提供非常安全的,可移植的,易于使用的CGI替代品.
二、软件架构
1.软件架构
(1)c/s客户端/服务器端(客户端需要下载相应的应用程序去访问服务器端的程序)
(2)b/s浏览器端/服务器端(只要有一个浏览器,通过域名访问服务器端的不同程序)现在主流为bs
2.资源分类
静态资源:可以理解为前端的固定页面,这里面包含HTML、CSS、JS、图片等等,不需要查数据库也不需要程序处理,直接就能够显示的页面,如果想修改内容则必须修改页面,但是访问效率相当高。
动态资源:需要程序处理或者从数据库中读数据,能够根据不同的条件在页面显示不同的数据,内容更新不需要修改页面但是访问速度不及静态页面。
动态资源要先转换为静态资源,然后在响应给浏览器端(动态资源需要先转换为静态资源再响应给浏览器)
①如servlet/jsp,php,asp…
3.网络通信三要素
(1)IP:计算机在网络中的唯一标识。
(2)端口:应用程序(就是计算机上的某一个软件)的唯一标识0~65536
(3)传输协议:规定了数据通信的规则(两个程序传输信息,要遵循相同的传输规则)
①基础协议
1)Tcp:安全协议,三次握手建立连接,四次挥手断开连接,确认双发都在线的情况下在传输,传输速度慢,安全。
2)Udp:不连接不安全协议,传输速度快。
三、Web服务器
1.服务器
安装了服务器软件的计算机。
2.服务器软件
接收用户的请求,处理请求,做出响应。
3.web服务器软件
接收浏览器用户的请求,处理请求,做出相应的回应。web服务器软件中,可以部署web项目,让用通过浏览器来访问这些项目。也称web容器。
4.常见的java相关的web服务器软件
webLogic:oracle公司,大型的javaEE服务器,支持所有的javaEE规范,收费的。
(JavaEE:java语言在企业开发中使用的技术和规范的总和,一种规定了13项大规范)
webSphere:IBM公司,大型的javaEE服务器,支持所有的javaEE规范,收费的。
JBOSS:JBOSS公司,大型的javaEE服务器,支持所有的javaEE规范,收费的。
Tomcat:Apache基金组织(阿帕奇),中小型的JavaEE服务器,仅仅支持少量的JavaEE规范。(servlet/jsp规范)。开源的免费的。
四、HTTP协议
1、概念:
User Agent
User Agent中文名为用户代理,简称 UA,它是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本、CPU 类型、浏览器及版本、浏览器渲染引擎、浏览器语言、浏览器插件等。
User Agent的含义
一些网站常常通过判断 UA 来给不同的操作系统、不同的浏览器发送不同的页面,因此可能造成某些页面无法在某个浏览器中正常显示,但通过伪装 UA 可以绕过检测。