JavaWeb开发核心知识点
什么是Web开发
Web通信,指的的两台计算机通过网络进行资源文件共享活动
Web开发确保本次通信顺利执行
Web通信过程中俩台计算机之间的角色
1.客户端计算机:用于发送请求
2.服务端计算机:提供共享的资源文件
资源文件
1.理论上来说,计算机上所有的文件都是资源共享文件
2.分类:
1)静态资源文件:
【定义】:文件内容是固定的,不能随着请求变化而发生变化
【例子】: 图片 html doc xls
【特点】: 服务端计算机直接将【静态资源文件】推送给【客户端计算机】
所有被共享的【静态资源文件】最终是在客户端计算机运行
2)动态资源文件:
【定义】:文件内容可以根据用户提供需求变化而产生不同变化内容
【例子】: Java文件
【特点】: 服务端计算机会调用执行【动态资源文件】。
服务端计算机将【动态资源文件的运行结果】交给客户端计算机
Web通信过程,俩台计算机如何进行通信
1.C/S结构通信方式:
[介绍]: C:client,客户端计算机安装特定【客户端程序】
可以帮助客户端计算机向指定服务端计算发送请求
S:server,在服务端计算机安装一种特定【资源调度软件】
接收特定客户端程序发送请求,将请求需要资源文件
推送回客户端计算机上【客户端程序】
[例子]: 微信 ,QQ, 所有大型网络游戏
[优缺点]:
[优点]:
1.可以有效的保护服务端计算机
2.可以分摊服务端计算机工作压力
[缺点]:
1.增加客户获得服务的成本
2.增加服务端维护成本。
[针对客户群体]:个人用户
2.B/S结构通信方式:
[介绍]: B:browser: 可以帮助客户端计算机向任意服务端发送请求
S:server:在服务端计算机安装一种特定【资源调度软件】
可以接收所有浏览器发送请求。将请求的资源文件
推送客户端计算机浏览器上
[优缺点]:
[优点]:
1)不会增加客户获得服务的成本
2)不会增加服务端维护的成本。
[缺点]:
1)无法有效保护服务端计算机
2)无法通过客户端计算机分摊服务端计算机压力
【针对客户群体】:企业用户
网络协议包
1.【定义】: 用于包裹在网络中传输【二进制数据】。
网络协议包存在【固定空间】用于存放【特定数据】
便于接收方分析得到数据
2.【分类】: FTP http
3.【B/S通信方式中】:到目前为止B/S通信结构中,只使用Http网络协议包
Http网络协议包内部结构:
1.Http请求协议包:
1)是浏览器在发送请求时,负责创建的.
2)是浏览器负责将请求信息,写入到请求协议包
3)Http请求协议包内部自上而下有四层结构
【请求行】:{
url: 请求的资源文件地址
method: 浏览器采用的请求方式
}
【请求头】:{
浏览器希望获得资源文件类型【html/png】
浏览器希望获得资源文件内容依赖字符集
如果浏览器采用【GET方式发送请求】,本次关联
请求参数需要保存在请求头
}
【空白行】:{ 隔离层 }
【请求体】: {
如果浏览器采用【POST方式发送请求】,
本次关联请求参数需要保存在请求体
}
2.Http响应协议包:
1)在服务端计算机的【资源调度软件】准备推送文件时,负责创建的
2)【响应协议包内容】可以由【资源调度软件】写入,可以由Java命令(response)写入
3) Http请求协议包内部自上而下有四层结构
【状态行】:{
状态码
}
【响应头】:{
返回文件内容类型(doc,text,html,text/html)
返回文件内容依赖字符集,浏览器需要使用这个字符集
对接收内容进行解码
}
【空白行】:{ }
【响应体】:{
静态资源文件也可能是动态资源文件
运行结果(二进制形式)
}