什么是Web服务器?
Web 服务器是一个应用程序,对 HTTP 协议的操作进行封装,使得程序员不必直接对协议进行操作,让 Web 开发更加的便捷。
Web 服务器是安装在服务端的一款软件,我们可以将自己的 Web 项目部署到 Web 服务器软件中,当 Web 服务器软件启动后,部署在 Web 服务器软件中的资源就可以通过浏览器来访问。Web 服务器主要的功能是提供网上信息浏览服务。
既然 Web 服务器是一款软件,那么我们一定有很多的选择,这里我们使用的的是 TomCat ,TomCat 是 Apache 的一款轻量级 Web 服务器,提供了对 JSP 和 Servlet 的支持,之所以选择 TomCat,不仅因为它免费开源,而且具有操作简单,容易上手,跨平台实现等很多的优点,占有市面上大部分份额。
初学者入门学习 TomCat 主要从下面几个方面入手:
- 相关概念
- 安装,卸载,启动,关闭,配置和部署项目
- IDEA 中创建 Maven Web项目
- IDEA 中使用 TomCat 部署项目
下面我们首先从相关概念和基本使用方面入手,做一个详细的解读。
相关概念
TomCat 是 Apache 软件基金会的一个核心项目,是一个免费的轻量级的 Web 服务器,支持 Servlet / JSP 等少量的 JavaEE 规范,Servlet ,JSP 是动态网站使用的技术,被称为动态资源,而之前已经学习的 HTML,CSS,JavaScript 则是静态资源。每个人访问静态网站时的效果都是相同的,无法实现像登录这样的功能。
JavaEE 是指企业级 Java 开发,其中包含了 13 项技术规范,这些规范在 Java 中被称为接口,例如之前已经接触过的 JDBC。学习 TomCat 时要学习的规范是 Servlet 和 JSP。
因为 TomCat 支持 Servlet / JSP 的规范,所以 TomCat 也被称为 Web 容器,Servlet 容器,Servlet 需要依赖 TomCat 才能运行。
基本使用
下载安装
直接在官网下载 TomCat 压缩包即可,因为 TomCat 是绿色版软件,下载完成的压缩包直接解压即为安装成功。解压时,尽量选择没有中文和特殊字符的文件路径下,否则后期部署项目时可能会出现问题。
下面是 TomCat 的文件中的目录结构,如图:
可执行文件目录中存放了两种类型的可执行文件,其中 .bat 文件是 windows 系统的可执行文件。webapps 文件目录则用于项目的安装部署。
卸载
由于 TomCat 是一款绿色软件,所以卸载也十分的方便,只需要删除 TomCat 目录即可。
启动
在 TomCat 文件夹中,找到 bin 目录中的 start.bat ,双击运行。
这里可能会遇到很多问题,例如控制台窗口一闪而过,表示 TomCat 启动失败,这个问题大部分是由于 JAVA_HOME 环境变量配置问题导致的,你要做的就是检查你的 JAVA_HOME 配置是否有问题。
为什么在启动 TomCat 时需要关心 Java 环境变量的配置呢?不难看出,TomCat本身也是由 Java 编写的,在 TomCat 文件中就存放了其运行依赖的 jar 包。在 TomCat 启动时,会用到 Java 的环境,所以错误的 Java 环境变量导致了 TomCat 启动失败。
当然导致 TomCat 的启动失败还可能是其他的一些原因,例如端口号被占用等,这里不在赘述。
关闭
关闭 TomCat 有三种方式:
- 直接关闭命令行窗口:强制关闭
- 执行 bin / shutdown.bat :正常关闭
- 在命令行窗口使用快捷键 Ctrl + c :正常关闭
配置
解决启动过程中控制台窗口乱码的问题:在 conf / logging.prooperties 中修改配置文件为:
java.util.logging.ConsoleHandler.encoding = GBK
造成控制台中文乱码的原因是 windows 的控制台默认字符编码方式为 GBK,而 TomCat 默认使用 UTF-8 的方式编码。
有时可能因为端口号被占用的问题导致 TomCat 启动失败,此时我们可以通过修改程序占用的端口号解决问题。TomCat 默认的端口号为 8080,要想修改 TomCat 的启动端口号,则需要修改 conf / server.xml ,如下:
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
HTTP 协议使用的端口号是 80,如果将 TomCat 的端口号改为 80,则访问 TomCat 时将不用输入端口号。
部署
在使用 TomCat 部署 Web 项目时,只需要将项目放在 webapps 目录下,即完成部署。
一般情况下 JavaWeb 项目会被打成 war 包,然后我们将这个 war 包放置到 webapps 目录下,TomCat 就会自动解压这个 war 文件。
在 TomCat 文件中,本身自带了 Web 项目,我们可以尝试在浏览器中访问这个项目。如下图:
第一步:启动 TomCat。
双击 bin/ start.bat ,启动 TomCat。如图:
第二步:在浏览器中访问部署到 Web 服务器中的项目,直接输入 localhost 即可,前提是我们已经将 TomCat 占用的端口号改为 80。
关闭 TomCat 服务器,此时浏览器已经无法访问到这个 Web 项目,如图:
在大型 IDE 中开发 JavaWeb 项目时,我们每次部署项目都要将代码打包并且手动拷贝到 TomCat 文件目录中的 webapps 中,这样的操作十分的繁琐,所以,我们要学习如何在 idea 中使用 TomCat。在学习在 idea 中使用 TomCat 之前,先要学会在 idea 中创建 Maven Web 项目,这些内容都放在了下一章中。