Tomcat的简介与基本使用
简介
Web服务器
Web服务器是一个应用程序(软件),对HTTP协议的操作进行封装,使得程序员不必直接对协议进行操作,让Web开发更加便捷。主要功能是"提供网上信息浏览服务"。
Web服务器是安装在服务器端的一款软件,将来我们把自己写的Web项目部署到Web Tomcat服务器软件中,当Web服务器软件启动后,部署在Web服务器软件中的页面就可以直接通过浏览器来访问了。
Web服务器软件使用步骤
- 准备静态资源
- 下载安装Web服务器软件
- 将静态资源部署到Web服务器上
- 启动Web服务器使用浏览器访问对应的资源
Tomcat的相关概念:
-
Tomcat是Apache软件基金会一个核心项目,是一个开源免费的轻量级Web服务器,支持Servlet/JSP少量JavaEE规范。
-
概念中提到了JavaEE规范,那什么又是JavaEE规范呢?
JavaEE: Java Enterprise Edition,Java企业版。指Java企业级开发的技术规范总和。包含13项技术规范:JDBC、JNDI、EJB、RMI、JSP、Servlet、XML、JMS、Java IDL、JTS、JTA、JavaMail、JAF。
-
因为Tomcat支持Servlet/JSP规范,所以Tomcat也被称为Web容器、Servlet容器。
Servlet需要依赖Tomcat才能运行
Servlet作为Javaweb中的核心,他一般是依靠web服务器来运行的。而在java中tomcat无疑是最好的选择(tomcat本身就是java写的)。我们知道Servlet由web服务器创建,Servlet方法由web服务器调用。我们暂时可以这么去理解有Servlet就一定要有Tomcat,他们两是相伴相生的。
Tomcat的官网: https://tomcat.apache.org/ 从官网上可以下载对应的版本进行使用。
基本使用
下载
直接从官网下载
安装
Tomcat是绿色版,直接解压即可
-
将
apache-tomcat-8.5.68-windows-x64.zip
进行解压缩,会得到一个apache-tomcat-8.5.68
的目录,Tomcat就已经安装成功。注意,Tomcat在解压缩的时候,解压所在的目录可以任意,但最好解压到一个不包含中文和空格的目录,因为后期在部署项目的时候,如果路径有中文或者空格可能会导致程序部署失败。
-
打开
apache-tomcat-8.5.68
目录就能看到如下目录结构,每个目录中包含的内容需要认识下,bin:目录下有两类文件,一种是以
.bat
结尾的,是Windows系统的可执行文件,一种是以.sh
结尾的,是Linux系统的可执行文件。webapps:就是以后项目部署的目录
到此,Tomcat的安装就已经完成。
卸载
卸载比较简单,可以直接删除目录即可
启动
双击: bin\startup.bat
启动后,通过浏览器访问 http://localhost:8080
能看到Apache Tomcat的内容就说明Tomcat已经启动成功。
注意: 启动的过程中,控制台有中文乱码,需要修改conf/logging.prooperties
关闭
关闭有三种方式
- 直接x掉运行窗口:强制关闭[不建议]
- bin\shutdown.bat:正常关闭
- ctrl+c: 正常关闭
配置
修改端口
- Tomcat默认的端口是8080,要想修改Tomcat启动的端口号,需要修改 conf/server.xml
注: HTTP协议默认端口号为80,如果将Tomcat端口号改为80,则将来访问Tomcat时,将不用输入端口号。
启动时可能出现的错误
-
Tomcat的端口号取值范围是0-65535之间任意未被占用的端口,如果设置的端口号被占用,启动的时候就会包如下的错误
-
Tomcat启动的时候,启动窗口一闪而过: 需要检查JAVA_HOME环境变量是否正确配置
部署
-
Tomcat部署项目: 将项目放置到webapps目录下,即部署完成。
-
将目录hello拷贝到Tomcat的webapps目录下
-
通过浏览器访问
http://localhost/hello/a.html
,能看到内容就说明项目已经部署成功。
注意如果项目的文件夹里有index.html的文件,那么不需要详细的路径,直接到文件夹名即可。
但是呢随着项目的增大,项目中的资源也会越来越多,项目在拷贝的过程中也会越来越费时间,该如何解决呢?
-
-
一般JavaWeb项目会被打包称war包,然后将war包放到Webapps目录下,Tomcat会自动解压缩war文件
-
将 目录拷贝到Tomcat的webapps目录下
-
Tomcat检测到war包后会自动完成解压缩,在webapps目录下就会多一个haha目录
-
通过浏览器访问
http://localhost/haha/a.html
,能看到内容就说明项目已经部署成功。
-
至此,Tomcat的部署就已经完成了,至于如何获得项目对应的war包,后期我们会借助于IDEA工具来生成。
Tomcat原理
什么是Servlet
说到Tomcat那么我们就不得不提到Servlet,因为Tomcat是应用非常广泛的Servlet容器。
Servlet是JavaEE规范的一种,主要是为了扩展Java作为Web服务功能的统一接口。由其他内部厂商如tomcat,jetty内部实现web的功能。
如一个http请求到来:容器将请求封装为servlet中的HttpServletRequest对象,调用init(),service()等方法输出response,由容器包装为httpresponse返回给客户端的过程。
相关文章
- Nginx+Tomcat+Terracotta的Web服务器集群实做
- IntelliJ IDEA中运行Tomcat报内存溢出(java.lang.OutOfMemoryError: PermGen space)
- Tomcat登陆mysql的密码设置
- 【 Tomcat 】tomcat8.0 基本参数调优配置
- Eclipse中开发环境也想把Tomcat 的默认BIO模式改为NIO模式
- tomcat:tomcat的OutOfMemoryError解决
- eclipse中的Web项目自动部署到Tomcat
- Tomcat Session管理机制(Tomcat源代码解析七)
- Apache Tomcat Nginx的区别和联系
- Tomcat全攻略
- 如何监控tomcat性能:[1]工具一
- Tomcat学习—Tomcat的简介和目录以及配置文件介绍(Windows环境)
- Apache/Tomcat 关系几何
- android - 模拟器连接本地tomcat