Tomcat 基础

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

目录

一web 概念

1.软件架构

2.资源分类

3.网络通信三要素

二常见的web服务器

1 .概念

2.常见web服务器软件

三Tomcat 历史

四Tomcat 安装

1.下载

2. 安装

四Tomcat 目录结构

五Tomcat 启动停止

 启动

六Tomcat源码 

1 .下载

2 .运行


web 概念

1.软件架构

①:C/S 客户端 / 服务器端 ‐‐‐‐‐‐‐‐‐‐‐‐> QQ , 360 ....
②:B/S 浏览器 / 服务器端 ‐‐‐‐‐‐‐‐‐‐‐‐> 京东 网易 淘宝 ......

2.资源分类

①:静态资源 所有用户访问后得到的结果都是一样的称为静态资源。静态资
源可以直接被浏览器解析。* 如 html,css,JavaScript jpg
②:动态资源 : 每个用户访问相同资源后得到的结果可能不一样 , 称为动态资源。动态资源被访问后需要先转换为静态资源再返回给浏览器通过浏览器进行解析。 * 如 servlet/jsp,php,asp....

 

3.网络通信三要素

 ① IP 电子设备 ( 计算机 ) 在网络中的唯一标识。
 ② 端口应用程序在计算机中的唯一标识。 0~65536
 ③ 传输协议规定了数据传输的规则
  •   基础协议
  •  tcp : 安全协议三次握手。 速度稍慢
  •  udp不安全协议。 速度快

常见的web服务器

1 .概念

  • 服务器安装了服务器软件的计算机
  • 服务器软件接收用户的请求处理请求做出响应
  • web服务器软件接收用户的请求处理请求做出响应。
        在 web 服务器软件中可以部署 web 项目让用户通过浏览器来访问这些项目

2.常见web服务器软件

  • webLogicoracle公司大型的JavaEE服务器支持所有的JavaEE规范收费的。
  • webSphereIBM公司大型的JavaEE服务器支持所有的JavaEE规范收费的。
  • JBOSSJBOSS公司的大型的JavaEE服务器支持所有的JavaEE规范收费的。
  • TomcatApache基金组织中小型的JavaEE服务器仅仅支持少量的JavaEE规范 servlet/jsp。开源的免费的。

Tomcat 历史

  •  Tomcat 最初由Sun公司的软件架构师 James Duncan Davidson 开发名称为 “JavaWebServer”
  •  1999年 在 Davidson 的帮助下该项目于1999年于apache 软件基金会旗下的 JServ 项目合并并发布第一个版本3.x, 即是现在的Tomcat该版本实现了Servlet2.2 JSP 1.1 规范 。
  •  2001Tomcat 发布了4.0版本 作为里程碑式的版本Tomcat 完全重新设计了其架构并实现了 Servlet 2.3 JSP1.2规范。

Tomcat 安装

1.下载

https://tomcat.apache.org/download-80.cgi

 

2. 安装

         将下载的 .zip 压缩包 解压到系统的目录建议是没有中文不带空格的目录下即可。

Tomcat 目录结构

Tomcat 的主要目录文件如下
目录
目录下文件
说明
bin
/存放Tomcat的启动、停止等批处理脚本文件
startup.bat ,
startup.sh
用于在 windows linux 下的启动脚本
shutdown.bat ,
shutdown.sh
用于在 windows linux 下的停止脚本
conf
/用于存放Tomcat的相关配置文件
Catalina
用于存储针对每个虚拟机的 Context 配置
context.xml
用于定义所有 web 应用均需加载的 Context
置如果 web 应用指定了自己的 context.xml
该文件将被覆盖
catalina.properties
Tomcat 的环境变量配置
catalina.policy
Tomcat 运行的安全策略配置
logging.properties
Tomcat 的日志配置文件 可以通过该文件修
Tomcat 的日志级别及日志路径等
server.xml
Tomcat 服务器的核心配置文件
tomcat-users.xml
定义 Tomcat 默认的用户及角色映射信息配置
web.xml
Tomcat 中所有应用默认的部署描述文件 主
要定义了基础 Servlet MIME 映射。
lib
/
Tomcat 服务器的依赖包
logs
/
Tomcat 默认的日志存放目录
webapps
/
Tomcat 默认的 Web 应用部署目录
work
/
Web 应用 JSP 代码生成和编译的临时目录

Tomcat 启动停止

 启动

双击 bin/startup.bat 文件
停止
双击 bin/shutdown.bat 文件
访问
http://localhost:8080

Tomcat源码 

1 .下载

地址 https://tomcat.apache.org/download-80.cgi

2 .运行

1 解压zip压缩包

2 进入解压目录并创建一个目录命名为 home 并将 conf webapps 目录移入
home 目录中
3 在当前目录下创建一个 pom.xml 文件引入 tomcat 的依赖包

<?xml version="1.0" encoding="UTF‐8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema‐instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven‐4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.tomcat</groupId>
<artifactId>apache‐tomcat‐8.5.42‐src</artifactId>
<name>Tomcat8.5</name>
<version>8.5</version>
<build>
<finalName>Tomcat8.5</finalName>
<sourceDirectory>java</sourceDirectory>
<!‐‐ <testSourceDirectory>test</testSourceDirectory>‐‐>
<resources>
<resource>
<directory>java</directory>
</resource>
</resources>
<!‐‐ <testResources>
<testResource>
<directory>test</directory>
</testResource>
</testResources>‐‐>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven‐compiler‐plugin</artifactId>
<version>2.3</version>
<configuration>
<encoding>UTF‐8</encoding>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>3.4</version>
</dependency>
<dependency>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
<version>1.7.0</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>jaxrpc</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.eclipse.jdt.core.compiler</groupId>
<artifactId>ecj</artifactId>
<version>4.5.1</version>
</dependency>
</dependencies>
</project>
4 idea 中 导入该工程

5 配置idea的启动类 配置 MainClass 并配置 VM 参数。  

‐Dcatalina.home=D:/idea‐workspace/itcast_project_tomcat/apache‐tomcat‐
8.5.42‐src/home
‐Dcatalina.base=D:/idea‐workspace/itcast_project_tomcat/apache‐tomcat‐
8.5.42‐src/home
‐Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
‐Djava.util.logging.config.file=D:/idea‐
workspace/itcast_project_tomcat/apache‐tomcat‐8.5.42‐
src/home/conf/logging.properties

 6 启动主方法 运行Tomcat 访问Tomcat

出现上述异常的原因是我们直接启动 org.apache.catalina.startup.Bootstrap 的时候没
有加载 JasperInitializer 从而无法编译 JSP 。解决办法是在 tomcat 的源码 ContextConfig
中的 configureStart 函数中手动将 JSP 解析器初始化

 context.addServletContainerInitializer(new JasperInitializer(), null);

7 重启tomcat就可以正常访问了。  

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Tomcat