文章目录
一、简介
1. 历史
- 1996 年底,SUN 公司发布了 Servlet 第一版规范。
- 1997 年 SUN 公司软件架构师 James Duncan Davidson,开发了 Servlet 的参考实现项目 Java Web Server。
- 1999 将项目贡献给了 ASF,和 ASF 现有的 JServ 项目合并发布初始版本 Tomcat 3.0,实现了 Servlet 2.2 和 JSP 1.1 规范。
- Tomcat 仅仅实现了 Java EE 规范中与 Servlet、JSP 相关的类库,是 JavaEE 不完整实现。
- 2001 年 Tomcat 4.x 发布时,内建了 Catalina(Servlet容器)和 Jasper(JSP engine)等。
- 2005 年成为 Apache 顶级项目。
2. 应用场景
Tomcat 是 Apache 的扩展,是 Apache 的一个子项目,它具备 Web 服务器的所有功能,不仅可以监听接受请求并响应静态资源,而且可以在后端运行特定规范的 Java 代码 Servlet,同时将执行的结果以 HTML 代码的形式返回客户端。
Tomcat 虽然和 Apache 或者 Nginx 这些 Web 服务器一样,具有处理 HTML 页面的功能,然而由于其处理静态 HTML 的能力远不及 Apache 或者 Nginx,所以 Tomcat 通常是作为一个 Servlet 和 JSP 容器,单独运行在后端。
3. 组件
Tomcat 由一系列的组件构成,其中核心的组件有三个
名称
功能
Web 容器
完成 Web 服务器的功能( 如 HTTP/HTTPS 请求的接受和响应 )
Servlet 容器
由名称为 catalina 的脚本来处理 Servlet 代码( 如从数据库中拿取数据给与前端 )
JSP 容器
用于将 JSP 动态网页翻译成 Servlet 代码( index.html index.php index.jsp )
二、Tomcat 详述
1. Tomcat 核心组件详解
1.1 Web 容器
负责 WEB 服务的 TCP/IP、HTTP/HTTPS 等协议响应、处理 (nginx 处理静态页面的应用交互)
1.2 JSP 容器(JAVA Scripts page)
- 一种动态网页开发技术
- 它使用 JSP 标签在 HTML 网页中插入 Java 代码,通常以 <%开头,以%>结束
- JSP 是一种 Java servlet,主要用于实现 Java web 应用程序的用户界面部分
- JSP 通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页
1.3 Servlet 容器
- 由名称为