Java Web概述
2022/6/15 1:22:40
本文主要是介绍Java Web概述,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
JavaWeb概念
JavaWEB 是指所有通过 Java 语言编写可以通过浏览器访问的程序的总称。
什么是web应用? Web应用即网站中的程序。
常用软件体系结构
-
C/S 客户端/服务器(Client/Server)
例如QQ;
需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序;
缺点:软件更新时需要同时更新客户端和服务器端两端,比较麻烦;
优点:安全性比较好。 -
B/S 浏览器/服务器(Browser/Server)
优点:只需要编写服务器端程序;
缺点:安全性较差。
JavaWeb技术,所编写的web程序都是基于B/S结构的。
5.web应用程序的资源分类
静态web资源
表现形式:内容是静态的,不同的人在不同的时间来访问时都是相同的内容。HTML、CSS、JS 所需技术:HTML+CSS
动态web资源
表现形式:内容是由程序生成的,不同的人在不同的时间访问的内容很可能是不同的。 所需技术:HTML、CSS、数据库技术、高级语言(Java、C#、PHP)、客户端脚本技术:JavaScript、XML解析
HTTP协议
HTTP协议
即超文本传输协议,用于定义 服务器于浏览器之间交换山上的过程以及数据本身的格式的协议。
特点:
-
支持B/S及C/S模式
-
简单快速:客户向服务器请求服务时,只需传送请求方法和路径。
由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 -
灵活:HTTP允许传输任意类型的数据。
正在传输的类型由Content-Type加以标记。 -
无状态:HTTP协议是无状态协议。
无状态是指协议对于事务处理没有记忆能力。
缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
另一方面,在服务器不需要先前信息时它的应答就较快。
HTTP1.0和HTTP 1.1
HTTP协议的客户端有服务器的交互过程中需要经过建立连接,发送请求信息,回送响应信息,关闭连接四个步骤。
- HTTP1.0使用非持续连接:限制每次连接只处理一个请求,服务器处理完客户的请求,并收到客户的应答后,即断开连接。
- HTTP 1.1使用持续连接:不必为每个web对象创建一个新的连接,一个连接可以传送多个对象,采用这种方式可以节省传输时间。
因而对于下面代码:
<html> <body> <img src="/image01.jpg"> <img src="/image02.jpg"> <img src="/image03.jpg"> </body> </html>
http1.0需要请求4次和响应4次。
http1.1需要请求4次和响应1次。
HTTP消息
请求消息
请求消息包括以下数据:
请求行、请求头部、空行和请求数据四个部分组成。
//第一部分:请求行 GET / HTTP/1.1 //用来说明请求类型,要访问的资源以及所使用的HTTP版本. GET说明请求类型为GET另一个常用的POST //后面如果不为空,显示要访问的资源, //最后一部分说明使用的是HTTP1.1版本。 //第二部分:请求头部,用来说明服务器要使用的附加信息 Host:www.baidu.com Accept-Encoding: gzip, deflate, br Accept-Language: zh-CN,zh;q=0.9,ru;q=0.8 Cache-Control: max-age=0 Connection: keep-alive //从第二行起为请求头部,HOST将指出请求的目的地,也就是请求的哪台服务器/域名 //第三部分:空行,请求头部后面的空行是必须的 //即使第四部分的请求数据为空,也必须有空行。 //第四部分:请求数据也叫主体,可以添加任意的其他数据。 //这个例子的请求数据为空。
响应信息
一般情况下,服务器接收并处理客户端发过来的请求后会返回一个HTTP的响应消息。
HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。
//第一部分 HTTP/1.1 200 OK //状态行,由HTTP协议版本号, 状态码, 状态消息 三部分组成。 //第一行为状态行,(HTTP/1.1)表明HTTP版本为1.1版本,状态码为200,状态消息为(ok) //第二部分:消息报头,用来说明客户端要使用的一些附加信息 Content-Encoding: gzip Content-Type: text/html;charset=utf-8 Date: Mon, 13 Jun 2022 13:20:30 GMT Expires: Mon, 13 Jun 2022 13:20:30 GMT Server: BWS/1.1 //Date:生成响应的日期和时间;Content-Type:指定了MIME类型的HTML(text/html),编码类型是ISO-8859-1 //第三部分:空行,消息报头后面的空行是必须的 //第四部分:响应正文,服务器返回给客户端的文本信息。 //空行后面的html部分为响应正文。
这篇关于Java Web概述的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)
- 2024-05-30【Java】百万数据excel导出功能如何实现