Tomcat



Web服务器(Tomcat)的作用:
得到HTTP请求后,去后端将要请求的文件传回给请求者(浏览器/客户端)

Tomcat目录

Tomcat目录名称作用
bin存放启动和关闭Tomcat的脚本文件
conf存放Tomcat服务器的各种配置文件
lib存放Tomcat服务器的支撑jar包
logs存放Tomcat的日志文件
temp存放Tomcat运行时产生的临时文件
webappsweb应用所在目录,即供外界访问的web资源的存放目录
workTomcat的工作目录
  • conf/server.xml 用于配置tomcat的基本设置(启动端口,关闭端口,主机名)
  • web.xml 用于指定tomcat运行时配置(比如servlet等)
  • webapps目录是存放web应用,就是网站


Tomcat服务中部署WEB应用
JavaWeb程序/应用/工程目录结构
在这里插入图片描述
部署方式1:
将 web工程的目录拷贝到Tomcat 的 webapps目录下
1.news Web工程(目前都是静态资源html,图片)
2将该news目录/文件夹拷贝到Tomcat 的webapps目录下
3.浏览器输入:http://ip[域:port/ news/子目录…/文件名

部署方式2:
1.在Tomcat 下的 conf目录\Catalina\localhost\下,配置文件,比如hsp.xml(提醒:知道Tomcat通过配置,可以把一个web应用,映射到指定的目录,可以解决磁盘空间分配的问题


浏览器访问Web服务过程
在浏览器输入网址(如: http://localhost:8080/test/test.html)-->1.浏览器先从网址中解析出主机名(localhost)-->2.到本机的Host文件根据主机名找到对应的ip地址--> (如果没有找到,就会去外网的DNS服务器找)-->3.根据查询到的IP地址和对应的端口号,向tomcat发出http请求-->tomcat接收到http请求后,根据请求解析出要访问的web应用(test)-->根据请求解析出资源test.html-->在后端获取请求的资源test.html-->tomcat将结果以http相应的方式返回给浏览器-->浏览器将请求的资源解析出对应的页面
在这里插入图片描述


Java工程目录
在这里插入图片描述

设置应用名称
访问服务器下任何资源:http://ip:8080/Application context名称/资源名称

如果Application context设置为/,那么访问服务器资源:http://ip:8080/资源名称
在这里插入图片描述


WEB开发

在这里插入图片描述

B/S开发与C/S开发

Web服务器(Tomcat)的作用: 得到HTTP请求后,去后端将要请求的文件传回给请求者(浏览器/客户端)
在这里插入图片描述

在这里插入图片描述

JavaWeb服务器介绍

在这里插入图片描述

手写一个简单的JavaWeb服务

package Tomcat;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * @author 珀筱
 * 手写一个web服务,请求服务端,返回hello.html
 */
@SuppressWarnings("all")
public class myTomcat {
    public static void main(String[] args) throws IOException {
        ServerSocket serverSocket = new ServerSocket(8888);
        System.out.println("===========我的web服务正在8888端口监听===========");
        while (!serverSocket.isClosed()) {
            //1.该socket用于通信
            Socket socket = serverSocket.accept();
            //2.通过socket得到输出流
            OutputStream outputStream = socket.getOutputStream();
            //3.读取hello.html文件
            BufferedReader br = new BufferedReader(new FileReader("src\\Tomcat\\hello.html"));
            String data = "";
            while ((data = br.readLine()) != null) {
                //4.返回给客户端/服务器
                outputStream.write(data.getBytes());
            }
            
            outputStream.close();
            socket.close();
        }
        serverSocket.close();
    }
}

在这里插入图片描述

在这里插入图片描述

Tomcat的相关操作

下载与安装

在这里插入图片描述

启动

在这里插入图片描述

启动故障排除

在这里插入图片描述

Tomcat目录结构

在这里插入图片描述
在这里插入图片描述

catalina启动Tomcat

在这里插入图片描述

停止Tomcat

在这里插入图片描述
在这里插入图片描述

Tomcat服务中部署WEB应用

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

浏览器访问Web服务过程

在浏览器输入网址(如: http://localhost:8080/test/test.html)-->1.浏览器先从网址中解析出主机名(localhost)-->2.到本机的Host文件根据主机名找到对应的ip地址-->3.根据查询到的IP地址和对应的端口号,向tomcat发出http请求-->tomcat接收到http请求后,根据请求解析出要访问的web应用(test)-->根据请求解析出资源test.html-->在后端获取请求的资源test.html-->tomcat将结果以http相应的方式返回给浏览器-->浏览器将请求的资源解析出对应的页面
在这里插入图片描述
在这里插入图片描述

到本机的host文件去查询主机名对应的IP

在这里插入图片描述
在这里插入图片描述

根据查询的IP,向tomcat发出Http请求

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test</title>
</head>
<body>
<h1>hello,world</h1>
<img src="./img.jpg" width="300">
</body>
</html>

抓包
在这里插入图片描述
请求头
在这里插入图片描述
响应头
在这里插入图片描述
第一次返回的是静态html文件,这个文件大小就是186字节
在这里插入图片描述
 
一次请求只会返回一个资源
第二次返回的是张图片
浏览器先将静态的html文件返回后,发现有一个图片资源,就会再次发出请求
在这里插入图片描述
在这里插入图片描述

没有找到host文件,就会去外网的DNS服务器查找

在这里插入图片描述
 

IDE开发部署Tomcat

1.创建一个项目

在这里插入图片描述
 

2. 点击Add Framework Support

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 

3.将项目放到web目录下

注意别放错位置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

 

4. 要配置一个tomcat,用来管理我们的web应用

点击右上边的Add Configuration
在这里插入图片描述
点击左上角的+号
在这里插入图片描述
选择Tomcat Server 下的 Local
在这里插入图片描述
指定tomcat的安装目录
在这里插入图片描述
以及一些其他设置
在这里插入图片描述
选择以那种方式发布应用
在这里插入图片描述
在这里插入图片描述
修改访问应用名称
在这里插入图片描述
 

5. 启动tomcat

在这里插入图片描述
在这里插入图片描述
 

IDE开发部署Tomcat注意事项与细节

在这里插入图片描述

1. 热加载

在这里插入图片描述

  • on update action:表示当我们更新操作是, Tomcat 会自动更新类和资源(当jsp/html文件修改时,可以生效,但是如果你修改的java文件,,需要Redepoly才会生效)
  • on frame deactivation:表示IDEA失去焦点(比如最小化),也会导致jsp/html发生更新,但是java修改了,还是需要Redeploy

 

2.端口修改

修改过后,在idea中重启tomcat即可
在这里插入图片描述
 

3.out目录是什么

在这里插入图片描述

  • 当tomcat启动时,会生成out目录,该目录就是原项目资源的映射,我们浏览器访问的资源是out目录

  • 就算修改了out目录,访问的网页是会发生变化(与源文件访问的网页不同),但只要bulid项目或者重新发布项目就会以原项目为原目录更新out目录
     

Java工程目录介绍

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值