天天看点

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

文章目录

  • 一、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服务器,或者应用服务器。它本质就是一个软件,一个应用。作用就是发布我们的应用(工程),让用户可以通过浏览器访问我们的应用。
    JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

常见的应用服务器,请看下表:

服务器名称 说明
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
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
  • Tomcat各个版本所需要的支持
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

二、Tomcat下载与安装

Tomcat官网下载地址

2.1 Tomcat各版本所需支持

安装:直接解压即可

2.2 Tomcat各版本所需支持

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

2.3 Tomcat目录结构详解

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

2.4 Tomcat基本使用

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

2.5 Tomcat启动和停止及问题分析解决

1)启动和停止

Tomcat服务器的启动文件在二进制文件目录中:

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

这两个文件就是Tomcat的启动文件。

Tomcat服务器的停止文件也在二进制文件目录中:

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

这两个文件就是Tomcat的停止文件。

其中

.bat

文件是针对

windows

系统的运行程序,

.sh

文件是针对

linux

系统的运行程序。

访问

localhost:8080

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

2)启动遇到的问题

第一个问题:启动一闪而过

原因:没有配置环境变量。

解决办法:配置上JAVA_HOME环境变量

第二个:Address already in use : JVM_Bind

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

原因:端口被占用

解决办法:找到占用该端口的应用

使用cmd命令:

netstat -ano | findstr 8080

查看pid 在任务管理器中结束占用端口的进程。

再次输入指令:

taskkill -pid 7244 -f

,回车即可杀死命令(要以管理员身份启动CMD)

进程很重要:修改自己的端口号。修改的是Tomcat目录下

\conf\server.xml

中的配置。

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第三个:启动产生很多异常,但能正常启动

原因:Tomcat中部署着很多项目,每次启动这些项目都会启动。而这些项目中有启动报异常的。

解决办法:

​ 能找到报异常的项目,就把它从发布目录中移除。

​ 不能确定报异常的项目,就重新解压一个新的Tomcat。

第四个:其它问题

例如:启动产生异常,但是不能正常启动。此时就需要解压一个新的Tomcat启动,来确定是系统问题,还是Tomcat的问题。

所以,此时就需要具体问题,具体分析,然后再对症解决。

第五个:乱码问题

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

改成跟控制台一样的编解码。

2.6 本地部署Tomcat项目

Webapps

下创建项目

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

三、IDEA集成Tomcat服务器

3.1 IDEA配置Tomcat

第一步

1.点击Run-> Edit Configurations

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第二步

2.点击 Defaults-> Tomcat server-> Local

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第三步

3.点击 Configure-> Tomcat home->选择 tomcat所在路径

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第四步

创建JavaEE工程

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

四、Linux系统安装Tomcat

4.1 Linux下配置Tomcat

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第一步:下载tomcat

进入Tomcat官网,找到对应版本点击

download

进入下载页面,如下图:

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第二步:上传到linux

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第三步:在 /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
           
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

第八步:修改防火墙的规则

方式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

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

创建结果:

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

5.4 项目组成详解

  • src:存放源代码的
  • web:存放项目相关资源的(htm、 CSs, JS、jsp、图片等)
  • WEB-INF:存放相关配置的 web. xm等)

六、JavaWeb应用的部署

6.1 IDEA部署

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

6.2 war包发布

1)将web目录打成war包

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
jar -cvf webdemo.war .
           
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

2)放到Tomcat下的Webapps目录下

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

3)启动服务时,tomcat会自动解压,最后访问

localhost:8080/webdemo

即可

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

6.3 Tomcat的配置文件

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

6.4 Tomcat的虚拟目录

为什么要搞虚拟目录呢?这里就要说一下了,刚才我们的war包是放在webapps下面的,也就是说tomcat启动后可以找到webapps下面的文件,也就是说只有在这个目录下的文件才能访问,但是我们想放在硬盘上其他地方也可以访问到那应该如何做呢,那就引入虚拟目录的概念了,虚拟目录顾名思义哈,虚拟的,可以理解为一种映射吧。

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

Tomcat

下的conf中的

server.xml

追加以下配置即可。

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

6.5 Tomcat配置虚拟主机

Tomcat

下的conf中的

server.xml

添加加以下配置即可。

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署
<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

属性就失效了。

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

主机名映射

配置

C:\Windows\System32\drivers\etc

即可(以管理员身份)

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署

测试域名

JavaWeb核心|Tomcat一、Tomcat介绍二、Tomcat下载与安装三、IDEA集成Tomcat服务器四、Linux系统安装Tomcat五、Tomcat发布JavaWeb应用六、JavaWeb应用的部署