文章目录
- 一、Tomcat介绍
-
- 1.1 关于服务器
- 1.2、Tomcat的介绍
- 二、Tomcat下载与安装
-
- 2.1 Tomcat各版本所需支持
- 2.2 Tomcat各版本所需支持
- 2.3 Tomcat目录结构详解
- 2.4 Tomcat基本使用
- 2.5 Tomcat启动和停止及问题分析解决
- 2.6 本地部署Tomcat项目
- 三、IDEA集成Tomcat服务器
-
- 3.1 IDEA配置Tomcat
- 四、Linux系统安装Tomcat
-
- 4.1 Linux下配置Tomcat
- 五、Tomcat发布JavaWeb应用
-
- 5.1 JavaWeb工程概述
- 5.2 JavaWeb应用目录结构详解
- 5.3 JavaWeb应用的创建
- 5.4 项目组成详解
- 六、JavaWeb应用的部署
-
- 6.1 IDEA部署
- 6.2 war包发布
- 6.3 Tomcat的配置文件
- 6.4 Tomcat的虚拟目录
- 6.5 Tomcat配置虚拟主机
一、Tomcat介绍
1.1 关于服务器
- 服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能设备等)提供计算或者应用服努。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。
- 服务器的概念非常的广泛,它可以指代一台特殊的计算机(相比普通计算机运行更快、负载更高、价格更贵),也可以指代用于部署网站的应用。我们这里说的服务器,其实是web服务器,或者应用服务器。它本质就是一个软件,一个应用。作用就是发布我们的应用(工程),让用户可以通过浏览器访问我们的应用。
常见的应用服务器,请看下表:
服务器名称 | 说明 |
---|---|
weblogic | 实现了javaEE规范,重量级服务器,又称为javaEE容器 |
websphereAS | 实现了javaEE规范,重量级服务器。 |
JBOSSAS | 实现了JavaEE规范,重量级服务器。免费的。 |
Tomcat | 实现了jsp/servlet规范,是一个轻量级服务器,开源免费。 |
1.2、Tomcat的介绍
- Tomcat是 Apache软件基金会的 Jakarta项目组中的一个核心项目,由 Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun公司的参与和支持,最新的 Servlet、JSP规范总是能在 Tomcat中得到体现。因为 Tomcat技术先进、性能稳定,而且免费,所以深受Java爰好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。
- Tomcat官网:https://tomcat.apache.org
- Tomcat各个版本所需要的支持
二、Tomcat下载与安装
Tomcat官网下载地址
2.1 Tomcat各版本所需支持
安装:直接解压即可
2.2 Tomcat各版本所需支持
2.3 Tomcat目录结构详解
2.4 Tomcat基本使用
2.5 Tomcat启动和停止及问题分析解决
1)启动和停止
Tomcat服务器的启动文件在二进制文件目录中:
这两个文件就是Tomcat的启动文件。
Tomcat服务器的停止文件也在二进制文件目录中:
这两个文件就是Tomcat的停止文件。
其中
.bat
文件是针对
windows
系统的运行程序,
.sh
文件是针对
linux
系统的运行程序。
访问
localhost:8080
2)启动遇到的问题
第一个问题:启动一闪而过
原因:没有配置环境变量。
解决办法:配置上JAVA_HOME环境变量
第二个:Address already in use : JVM_Bind
原因:端口被占用
解决办法:找到占用该端口的应用
使用cmd命令:
netstat -ano | findstr 8080
查看pid 在任务管理器中结束占用端口的进程。
再次输入指令:
taskkill -pid 7244 -f
,回车即可杀死命令(要以管理员身份启动CMD)
进程很重要:修改自己的端口号。修改的是Tomcat目录下
\conf\server.xml
中的配置。
第三个:启动产生很多异常,但能正常启动
原因:Tomcat中部署着很多项目,每次启动这些项目都会启动。而这些项目中有启动报异常的。
解决办法:
能找到报异常的项目,就把它从发布目录中移除。
不能确定报异常的项目,就重新解压一个新的Tomcat。
第四个:其它问题
例如:启动产生异常,但是不能正常启动。此时就需要解压一个新的Tomcat启动,来确定是系统问题,还是Tomcat的问题。
所以,此时就需要具体问题,具体分析,然后再对症解决。
第五个:乱码问题
改成跟控制台一样的编解码。
2.6 本地部署Tomcat项目
在
Webapps
下创建项目
三、IDEA集成Tomcat服务器
3.1 IDEA配置Tomcat
第一步
1.点击Run-> Edit Configurations
第二步
2.点击 Defaults-> Tomcat server-> Local
第三步
3.点击 Configure-> Tomcat home->选择 tomcat所在路径
第四步
创建JavaEE工程
四、Linux系统安装Tomcat
4.1 Linux下配置Tomcat
第一步:下载tomcat
进入Tomcat官网,找到对应版本点击
download
进入下载页面,如下图:
第二步:上传到linux
第三步:在 /usr/local 新建一个文件夹tomcat
mkdir /usr/local/tomcat
第四步:移动 tomcat…tar.gz 到 /usr/local/tomcat
mv apache-tomcat-8.5.32.tar.gz /usr/local/tomcat/
第五步:进入/usr/local/tomcat目录,解压Tomcat
cd /usr/local/tomcat
tar -xvf apache-tomcat-8.5.32.tar.gz
第六步:进入 /usr/local/tomcat/apache-tomcat-8.5.32/bin
cd /usr/local/tomcat/apache-tomcat-8.5.32/bin
第七步:启动tomcat
方式1:
sh startup.sh
方式2:
./startup.sh
第八步:修改防火墙的规则
方式1:service iptables stop 关闭防火墙(不建议); 用到哪一个端口号就放行哪一个(80,8080,3306...)
方式2:放行8080 端口
修改配置文件
cd /etc/sysconfig
vi iptables
复制(yy , p)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
改成
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
重启加载防火墙或者重启防火墙
service iptables reload
或者
service iptables restart
五、Tomcat发布JavaWeb应用
5.1 JavaWeb工程概述
JavaWeb
应用是一个全新的应用种类。这类应用程序指供浏览器访问的程序,通常也简称为web应用。
一个web应用由多个静态web资源和动态web资源组成,例如:html、css、js文件,jsp文件、java程序、支持jar包、工程配置文件、图片、音视频等等。
Web应用开发好后,若想供外界访问,需要把web应用所在目录交给Web服务器管理(Tomcat就是Web服务器之一),这个过程称之为虚似目录的映射。
5.2 JavaWeb应用目录结构详解
myapp--------------应用名称
1.html
css/css.css
js/demo.js
WEB-INF--------如果有web.xml或者.class文件时,该目录必须存在,且严格区分大小写。
--------该目录下的资源,客户端是无法直接访问的。
--------目录中内容如下:
classes目录----------------web应用的class文件(加载顺序:我们的class,lib目录中的jar包,tomcat的lib目录中的jar包。优先级依次降低)
lib目录--------------------web应用所需的jar包(tomcat的lib目录下jar为所有应用共享)
web.xml-------------------web应用的主配置文件
5.3 JavaWeb应用的创建
选择
JavaEE7
版本如果选择JavaEE8则不会为你创建
web.xml
创建结果:
5.4 项目组成详解
- src:存放源代码的
- web:存放项目相关资源的(htm、 CSs, JS、jsp、图片等)
- WEB-INF:存放相关配置的 web. xm等)
六、JavaWeb应用的部署
6.1 IDEA部署
6.2 war包发布
1)将web目录打成war包
jar -cvf webdemo.war .
2)放到Tomcat下的Webapps目录下
3)启动服务时,tomcat会自动解压,最后访问
localhost:8080/webdemo
即可
6.3 Tomcat的配置文件
6.4 Tomcat的虚拟目录
为什么要搞虚拟目录呢?这里就要说一下了,刚才我们的war包是放在webapps下面的,也就是说tomcat启动后可以找到webapps下面的文件,也就是说只有在这个目录下的文件才能访问,但是我们想放在硬盘上其他地方也可以访问到那应该如何做呢,那就引入虚拟目录的概念了,虚拟目录顾名思义哈,虚拟的,可以理解为一种映射吧。
在
Tomcat
下的conf中的
server.xml
追加以下配置即可。
6.5 Tomcat配置虚拟主机
在
Tomcat
下的conf中的
server.xml
添加加以下配置即可。
<Host name="www.webdemo.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="webdemo"/>
</Host>
虚拟目录的配置,支持两种方式。第一种是通过在主配置文件中添加标签实现。第二种是通过写一个独立配置文件实现。
第一种方式:在
server.xml
的
<Host>
元素中加一个
<Context path="" docBase=""/>
元素。
path
:访问资源URI。URI名称可以随便起,但是必须在前面加上一个/
docBase
:资源所在的磁盘物理地址。
第二种方式:是写一个独立的
xml
文件,该文件名可以随便起。在文件内写一个
<Context/>
元素。
该文件要放在Tomcat目录中的
conf\Catalina\localhost\
目录下。
需要注意的是,在使用了独立的配置文件之后,访问资源URI就变成了
/+文件的名称。而
Context
的
path
属性就失效了。
主机名映射
配置
C:\Windows\System32\drivers\etc
即可(以管理员身份)
测试域名