Tomcat服务器与HTTP协议之间的知识点

Tomcat服务器

Apache组织开源免费的web服务器,支持JavaEE规范(Servlet/Jsp)
JavaEE规范:都要实现一组Oracle公司规定的接口,这些接口是称为JavaEE规范
浏览器只能解析静态资源的能力,所以需要将动态资源转换为静态资源,所以用到了tomcat来实现此过程

网络通信的三要素:
ip:电子设备在互联网中的唯一标识
端口:软件在计算机中的唯一标识
协议:规定了双方通信的标准,底层协议是TCP和UDP协议

软件的架构

  • 网络中有很多的计算机,它们直接的信息交流,我们称之为:交互
  • 在互联网交互的过程的有两个非常典型的交互方式——B/S 交互模型(架构)和 C/S 交互模型(架构)
  • Client/Server 客户端/服务器
  • Browser/Server 浏览器/服务器

web资源的分类

静态资源

对于同一个页面,所有人看到的都是一样的,html、css、js、img、avi视频

动态资源

对于同一个购物车页面,不同用户看到的内容是不一样的,servlet/jsp

服务器

服务器的作用

开发者通过web服务器可以把本地资源发布到互联网

tomcat服务器软件的介绍

tomcat服务器使用

官网下载链接:http://tomcat.apache.org/

启动和关闭tomcat服务器

bin目录下,startup.bat:启动;shutdown.bat:关闭

常见问题处理

  1. 启动报错问题:启动时,黑屏一闪而过,Java环境变量没有配置
  2. Address already in use:8080端口被占用

tomcat目录介绍

bin:启动和停止的命令
conf:该tomcat的配置文件
lib:运行时所需的jar包
logs:运行日志
temp:临时文件(缓存)
webapps:发布自己网站的目录
work:运行时产生的文件(jsp->java)

web项目目录结构

web项目:
静态资源(html、css、js、img)
WEB-INF目录(浏览器无法直接访问内部的资源)下classes目录(java字节码对象)、lib(架包)、web.xml:当前项目的核心配置文件,servlet3.0可以省略
index.html或者index.jsp

tomcat的发布项目方式

在webapps文件下面直接发布

  1. 将项目放在webapps文件下即可,这种方案一般在开发完毕后,来使用的

使用虚拟路径的方式发布项目

  1. servlet.xml部署即可
  2. 独立xml部署(开发时) 在tomcat/conf/Catalina/localhost中,创建xml配置文件,添加标签

IDEA中使用Tomcat

配置tomcat

将解压后的tomcat添加到IDEA中
在这里插入图片描述

创建Web项目

在这里插入图片描述

页面资源热更新

在这里插入图片描述

http协议简介

超文本传输协议,在客户端和服务器端通信时,规范了传输数据的格式

http协议特点

  1. 基于tcp协议
  2. 默认端口号80
  3. 基于请求/响应模型
  4. 无状态协议(多次请求之间都是独立的,不能交互数据)

HTTP请求

请求行

  • 格式
    请求方式 请求路径 协议/版本号

  • 例如
    POST /day07_myapp/static/login.html HTTP/1.1
    GET /day07_myapp/static/login.html?username=jack&password=123 HTTP/1.1

  • 请求方式区别
    get
    1.请求参数在地址栏显示(请求行)
    2.请求参数大小有限制
    3.数据不太安全
    post
    1.请求参数不在地址栏显示(请求体)
    2.请求参数大小没有限制
    3.数据相对安全

请求头

请求头行、请求头、请求体

请求体

格式:参数名=参数值&参数名=参数值&。。。。
注意:get方式没有请求体,post方式才有

HTTP响应

响应行

格式:协议/版本号 状态码
常见状态码:

  1. 200——成功
  2. 302——重定向
  3. 304——从缓冲中读取数据
  4. 404——请求的资源未找到
  5. 405——请求的方法未找到
  6. 500——服务器内部错误(java代码写错了。。。。)

响应头

格式:响应头名称:响应头的值

常见响应头

  1. Location:通常与状态码302一起使用,实现重定向操作
    Location:http://www.itcast.cn

  2. Content-Type:服务器告诉客户端,返回响应体的数据类型和编码方式
    Content-Type:text/html;charset=utf-8

  3. Content-Disposition:服务器告诉客户端,以什么样方式打开响应体
    * in-line(默认):浏览器直接打开相应内容,展示给用户
    * attachment;filename=文件名:浏览器以附件的方式保存文件 【文件下载】

  4. Refresh:在指定间隔时间后,跳转到某个页面
    Refresh:5;http://www.itcast.cn

  5. Last-Modified:通常与状态码304一起使用,实现缓存机制
    Last-Modified: Mon, 13 Apr 2020 06:11:24 GMT

响应体(正文)

服务器返回的数据,由浏览器解析后展示给用户, 用户看到页面所有的内容,都是在响应体中返回的

发布了34 篇原创文章 · 获赞 9 · 访问量 1268

猜你喜欢

转载自blog.csdn.net/weixin_43616750/article/details/105480953