Tomcat是什么?
Tomcat是由Apache开发,是Sun公司推荐的运行Servlet和JSP的一个Servlet容器(独立的Servlet容器是Tomcat的默认模式),并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台,安全域管理和Tomcat阀等。当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
JSP(Java Server Pages,Java服务器页面):使用Java语言作为脚本语言,将Java语言和特定变动内容嵌入到静态的页面中,实现以静态页面为模板,动态生成其中的部分内容。Servlet(Java Servlet,小服务器程序或服务连接器):用Java编写,在服务器端运行的小程序,主要功能在于交互式地浏览和生成数据,生成动态Web内容。
事实上,Tomcat既是容器也是服务器。Tomcat是由Java语言编写的,需要运行在Java上,所以一般需要先安装JDK,以提供运行环境。
Tomcat像是一个桥梁,外界访问服务器(某台计算机)资源的时候,Tomcat能够找到对应的文件夹。所以当我们访问localhost://index.html,它就知道去这台电脑的哪个位置找资源了。Tomcat也有力所难及的地方,如编写有组织的Web应用,这也是我们后面要不停地用Eclipse等进行整合开发的原因。
为什么要用Tomcat这个容器呢?
因为,忽略各个文件之间的跳转,Web应用本质只是一个装有很多资源(java/html/jsp/js/css等各种格式文件)的文件夹。假如我们有一个Web应用projectA,我们在某台计算机A把这些文件写好后,就希望其他设备能够通过一些方式来访问我们的资源。一种方法是通过在浏览器地址栏输入URL(Uniform Resource Locator,是WWW的统一资源定位符,就是指网络地址)来实现资源的访问。
那么,我们在计算机A上写好某个文件夹到其能够被其他计算机所访问,需要什么呢?首先需要互联网,计算机B先通过互联网找到计算机A,这样做的前提是两台电脑都必须在互联网这个网络里,也就是一台电脑必须要有IP地址才能被称为服务器,才能被别人访问。但这样只是找到了IP地址,我们还需要找到对应的主机。(注:一般主机是指一台电脑,但在Tomcat里,虚拟主机指的是计算机中某个文件夹)。但即使找到了计算机A,我们怎么知道要去哪里寻找Web应用ProjectA呢。Tomcat容器就是来解决这个问题的。Tomcat的一个重要功能就在于“映射”(通过配置文件实现)。