免费的、开放源代码的Web应用服务器
Apache软件基金会(Apache Software Foundation)Jakarta项目中的一个核心项目
由Apache、.Sun和一些公司及个人共同开发而成
深受Java爱好者的喜爱,并得到部分软件开发商的认可
目前比较流行的Web应用服务器
(1)Web容器:完成Web服务器的功能 web应用服务
web--》可以通过http(s)来访问的一个页面--》文件
web容器--》封装了一组文件
集中化管理--》一组组员的对象
(2)Servlet容器:名字为catalina,用于处理Servlet代码。
(3)JSP容器:用于将JSP动态网页翻译成Servlet代码。
只是用于安装定影的规则,格式来显示静态页而
后端进行交互,怎么打开交互页面展示
index.jsp---》tomcat用的
java环境----和数据交互,
动态页面:可以让用户进行交互的一种web的页面
1、Web容器:接受、响应请求
展示动态页面
入口出口
2、JSP容器:翻译java-->servlet
index.html--》nginx可以直接展示index.php
index.jsp-->java环境---》和数据库怎么进行交互,怎么连接到后端???
index.jsp---》java类代码---》就是执行对接后端的执行代码,所以我们需要在进行与用户交互时,将用户发出的请求、数据、
传输到后端
但是index.jsp中的一些java代码无法直接执行对接或者调用,需要先翻译为可以可直接执行的代码方式--》格式serverlst
代码格式
3、serverlet容器:serverlet代码格式就是用JSP容器来处理
简介:
web容器:1、接受、响应请求2、展示动态页面
JSP容器:翻译java--->servlet
Serverlet容器:借助于catalina来执行servelet代码(动态任务执行的标准格式)
Tomcat的核心功能有两个,分别是负责接收和反馈外部请求的连接器Connector,和负责处理请求的容器Container。
其中连接器和容器相辅相成,一起构成了基木的web服务Service。每个Tomcat服务器可以管理多个Service。
Connector:负责对外接收和响应请求。它是Tomcat与外界的交通枢纽,监听端口接收外界请求,并将请求处理后传递给容器做业务处理,最后将容器处理后的结果响应给外界
Container:负责对内处理业务逻辑。其内部由Engine、Host、Context.和Wrapper四个容器组成,用于管理和调用Servlet相关逻辑
Service:对外提供的Web服务。主要包含Connector和Container两个核心组件,以及其他功能组件。Tomcat可以管理多个Service,且各Service之间相互独立
每个Service会包含一个Container容器。在Container内部包含了4个子容器:
4个子容器的作用分别是:
(l)Engine:引擎,用来管理多个虚拟主机,一个Service最多只能有一个Engine:
(2)Host:代表一个虚拟主机,也可以叫站点,通过配置Host就可以添加站点:
(3)Context:代表一个Web应用,包含多个Servlet封装器:
(4)Wrapper:封装器,容器的最底层。每一Wrapper封装着一个Servlet,负责对象实例的创建、执行和销毁功能。
Engine、Host、Context和Wrapper,这四个容器之间属于父子关系。
容器由一个引擎可以管理多个虚拟主机。每个虚拟主机可以管理多个Web应用。每个Web应用会有多个Servlet封装器。
端口:8080,监听8080端口
netsta -antp |grep 8080 / java
1、用户在浏览器中输入网址,请求被发送到本机瑞口8080,被在那里监听的Connector获得:
2、Connector把该请求交给它所在的Service的Engine(Container)来处理,并等待Engine的回应:
3、请求在Engine、Host、Context和Wrapper这四个容器之间层层调用,最后在Servlet中执行对应的业务逻辑、数据存储等
4、执行完之后的请求响应在Context、Host、Engine容器之间层层返回,最后返回给Connector,并通过Connector返回给客户端。
关闭防火墙,核心防护
[root@nfs opt]# systemctl stop firewalld
[root@nfs opt]# systemctl disable firewalld
[root@nfs opt]# setenforce 0
把安装的包都移动到/opt 的目录下
[root@nfs opt]# ls
apache-tomcat-9.0.16.tar.gz jdk-8u201-linux-x64.rpm
rpm安装
[root@nfs opt]# rpm -ivh jdk-8u201-linux-x64.rpm
安装jdk的环境变量
[root@nfs opt]# vim /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=.:SJAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
刷新一下环境变量
[root@nfs opt]# source /etc/profile.d/java.sh
解压apache-tomcat包
[root@nfs opt]# tar zxvf apache-tomcat-9.0.16.tar.gz
把解压后的包移动到/usr/local/tomcat
[root@nfs opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat
[root@nfs opt]# /usr/local/tomcat/bin/startup.sh
[root@nfs opt]# netstat -antp|grep 8080
tcp6 0 0 :::8080 :::* LISTEN 4012/java
或
[root@nfs opt]# netstat -antp|grep java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 4012/java
tcp6 0 0 :::8009 :::* LISTEN 4012/java
tcp6 0 0 :::8080 :::* LISTEN 4012/java
:::* LISTEN 4012/java
tcp6 0 0 :::8080 ::😗 LISTEN 4012/java
![image-20220726173343700](https://img-blog.csdnimg.cn/img_convert/5c757eba8654534e0ae46dae2719f1ed.png)