JavaWeb学习笔记(一)

JavaWeb学习笔记(一)

目录

 

1.1、前言

1.2、web应用程序

1.3、静态web

1.4、动态web

Http

什么是HTTP?

两个时代

Http请求

1、请求行

2、消息头

Http响应

1.响应体

2、响应状态码


1.1、前言

web开发:

web,网页的意思 , www.baidu.com

静态web

html,css

提供给所有人看的数据始终不会发生变化!

动态web

淘宝,几乎是所有的网站;

提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!

技术栈:Servlet/JSP,ASP,PHP

在Java中,动态web资源开发的技术统称为JavaWeb;

1.2、web应用程序

web应用程序:可以提供浏览器访问的程序;

a.html、b.html……多个web资源,这些web资源可以被外界访问,对外界提供服务;你们能访问到的任何一个页面或者资源,都存在于这个世界的某一个角落的计算机上。

URL

这个统一的web资源会被放在同一个文件夹下,web应用程序–>Tomcat:服务器

一个web应用由多部分组成 (静态web,动态web)

html,css,js

jsp,servlet

Java程序

jar包

配置文件 (Properties)

web应用程序编写完毕后,若想提供给外界访问:需要一个服务器来统一管理;

1.3、静态web

*.htm, *.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。通络;

JavaWeb学习笔记(一)

 

静态web存在的缺点

Web页面无法动态更新,所有用户看到都是同一个页面

轮播图,点击特效:伪动态

JavaScript [实际开发中,它用的最多]

VBScript

它无法和数据库交互(数据无法持久化,用户无法交互)

1.4、动态web

页面会动态展示: “Web的页面展示的效果因人而异”;

JavaWeb学习笔记(一)

 

缺点:

加入服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布;

停机维护

优点:

Web页面可以动态更新,所有用户看到都不是同一个页面

它可以与数据库交互 (数据持久化:注册,商品信息,用户信息……..)

JavaWeb学习笔记(一)

新手村:–魔鬼训练(分析原理,看源码)–> PK场

 

Http

什么是HTTP?

  • HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。
  • 文本:html,字符串,~ ….
  • 超文本:图片,音乐,视频,定位,地图…….
  • 80
  • Https:安全的
  • 443

两个时代

 

  • http1.0   
  •             HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接
  • http2.0
    •             HTTP/1.1:客户端可以与web服务器连接后,可以获得多个web资源。

Http请求

 

  • 客户端—发请求(Request)—服务器

百度:

Request URL:https://www.baidu.com/  请求地址
Request Method:GET   get方法/post方法
Status Code:200 OK   状态码:200
Remote(远程) Address:14.215.177.39:443
Accept:text/html 
Accept-Encoding:gzip, deflate, br
Accept-Language:zh-CN,zh;q=0.9   语言
Cache-Control:max-age=0
Connection:keep-alive

1、请求行

 

  • 请求行中的请求方式:GET
  • 请求方式:Get,Post,HEAD,DELETE,PUT,TRACT…
  1. get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,安全,但高效
  2. post:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效。

2、消息头

Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式  GBK  UTF-8  GB2312  ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接
HOST:主机..../.

Http响应

服务器—响应—–客户端
百度:

Cache-Control:private   缓存控制
Connection:Keep-Alive   连接
Content-Encoding:gzip   编码
Content-Type:text/html  类型

1.响应体

Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding:支持哪种编码格式  GBK  UTF-8  GB2312  ISO8859-1
Accept-Language:告诉浏览器,它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接
HOST:主机..../.
Refresh:告诉客户端,多久刷新一次;
Location:让网页重新定位;

2、响应状态码

200:请求响应成功 200
3xx:请求重定向
重定向:你重新到我给你新位置去;
4xx:找不到资源 404
资源不存在;
5xx:服务器代码错误 500 502:网关错误

常见面试题:
当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114763.html原文链接:https://javaforall.net

(0)
上一篇 2021年10月3日 下午1:00
下一篇 2021年10月3日 下午2:00


相关推荐

  • YUM源仓库配置_开源仓库

    YUM源仓库配置_开源仓库YUM源仓库配置YUM源仓库配置YUM简介软件仓库的提供方式RPM软件包的来源以ftp方式构建YUM仓库1.在服务器上安装ftp2.命名服务器地址3.查看挂载4.进行匿名登录设置5.在一个客户机上登录安装ftp6.查看文件上传是否成功7.在服务器上查看yum源文件8.移动所有源文件到backup中,并创建新的目录源文件f.repo9.查看配置文件10.移动所有挂载目录下的文件到ftp下11.清除所有缓存,建立缓存12.安装ftp进行测试,ftp方式的yum仓库源是否可行YUM常用命令1.查询软件包2.查询

    2025年7月10日
    5
  • 这次一定弄懂完全图、连通图、连通分量、强连通图、强连通分量、极大连通分量、极小联通分量、生成树、生成森林的区别

    这次一定弄懂完全图、连通图、连通分量、强连通图、强连通分量、极大连通分量、极小联通分量、生成树、生成森林的区别一 各个概念的定义 1 完全图 nbsp 也称简单完全图 假设一个图有 n 个顶点 那么如果任意两个顶点之间都有边的话 该图就称为完全图 2 连通图 一般都是指无向图 nbsp 从顶点 v 到 w 有路径 就称顶点 v 和 m 连通 路径是由顶点和相邻顶点序偶构成的边所形成的序列 其实就是一堆相连的顶点及其边 nbsp 如果图中任意俩顶点都连通 则该图为连通图 3 连通分量 nbsp 与连通图对应 一般书上说的都是特指无向图 nbsp 极大连通子图是无向图的连通分量 暗指极大连通子图也指无向

    2026年3月26日
    3
  • QueryInterface详解 COM

    QueryInterface详解 COMQueryInterface接口查询IUnknown:      所有的COM接口均需要继承IUnknown接口。因此,若某个用户拥有一个IUnknown接口指针,它并不需要知道它所拥有的接口指针到底是什么类型的,而只需要通过此接口就可以用来查询其他接口就行了。      由于所有的COM接口都继承了IUnknown,每个接口的vbtl的前三项都是QueryInterface,A

    2022年6月29日
    32
  • 在 Virtual Box 安装 Mac Os 并安装 Qt 开发应用

    在 Virtual Box 安装 Mac Os 并安装 Qt 开发应用导读由于 Beslyric for X 项目开发需要 开始尝试在 MacOs 下开发 Qt 应用 尝试成功后 记录于此 希望对有类似需求的人有所帮助 本文以开发 Beslyric for X 为例 记录从下载 Virtualbox 开始到正常开发并发布的步骤 本文地址 https www cnblogs com BensonLaur p ht

    2026年3月17日
    2
  • VB学习笔记(基础知识)(一)「建议收藏」

    VB学习笔记(基础知识)(一)「建议收藏」VisualBasic程序设计语言学习笔记(一)本学习笔记对应版本:VB6.0企业版(推荐使用企业版)对象及其操作对象是VisualBasic中的重要概念,现在介绍两种基本对象——窗体和控件。VisualBasic中,对象可以分为两类,即预定义对象和用户定义对象,其中,窗体和控件就是预定义对象。对象属性属性是对象的特征,不同的对象有不同的属性,而常见的属性有:1.Caption…

    2022年6月21日
    49
  • java map 缓存_缓存用于

    java map 缓存_缓存用于缓存什么是缓存?平常的开发项目中,多多少少都会使用到缓存,因为一些数据我们没有必要每次查询的时候都去查询到数据库。缓存的使用场景:在Java应用中,对于访问频率高,更新少的数据,通常的方案是将这类数据加入缓存中,相对从数据库中读取,读缓存效率会有很大提升。在集群环境下,常用的分布式缓存有Redis等。但在某些业务场景上,可能不需要去搭建一套复杂的分布式缓存系统,在单机环境下,通常是会希望使用内部的缓存(LocalCache)。使用map缓存方案:基于ConcurrentHashMap实现数

    2026年4月16日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号