javaWeb企业级解决方案
在开发中有两种开发架构:
C/S架构:需要下载客户端,有一部分代码在客户端上,来和服务器交互
优点:适合做与本地依赖比较大的程序
访问权限高最高权限
适用于:硬件依赖,举例 游戏
缺点:
信息软件不适合使用C/S(更新是一个问题,服务器更新客户端就需要更新)
多系统兼容(每个系统都要做客户端)
B/S架构:服务执行逻辑,用网页做呈现(网页可以理解为服务器)
优点:只要有浏览器,就可以查看数据和提交数据
不用客户端更新(只要服务器有变动,只要刷新浏览器就可以呈现更新的内容)
可以跨系统(只用通过浏览器访问即可,不同系统可以做一个app壳子来通过浏览器访问服务器)
缺点:
不能做效果非常好的游戏.
不能对本地磁盘私自访问(权限比较低只有用户同意才可以访问)
不能对本地硬件私自访问
web(B/S)逻辑在服务器,呈现在浏览器
初识协议
浏览器就是解析器
当我们输入域名时他会做什么
1.找到域名解析器解析域名
1.如果已经解析了 就不要需要再次解析 每次解析域名都会有一个时间限制(因为有缓存,时间限制到了他就会刷新)
2.解析出IP地址 ,马上对IP地址的服务器访问
3.拿下来的是网页代码 HTML 页面内容
4.解析HTML内容,一遍解析 一遍下载素材
下载素材(缓存) 先看本地是否下载过,对比一下服务器的文件时间,如果没有改动就不用下载了
5.运行里面的脚本语言
6.一个网页完整的加载完毕
服务器语言
静态语言:(内容是定死的在服务器上直接下载HTML通过浏览器解析,内容永远不会表除非服务器上的HTML文件发生改变)
适用于在网页中加载永远不会发生改变的内容
就是在服务器上根本就不会运行
直接把页面下载到客户端浏览器上
动态语言:
在服务器上运行相应的代码,由代码来决定网页的内容
可以对本次访问或者用户列表在服务器上运行逻辑并呈现不同的效果
当网络访问时
请求头信息:
我要请求地址页面
客户端带给你的参数
我请求的方法
我的客户端信息
浏览器支持
其他
响应头:
本次下来的是什么参数(因为他会根据你的数据决定用什么执行,视频就用视频播放器,音乐就用mp3播放等等)
数据长度
服务器相关信息
数据
其他
协议讲解:
http协议:
结果协会定制好的通讯代码
访问服务器 前面会带请求头信息
响应内容到浏览器 会带有响应头
请求头是用来告知服务器我本次请求目的
响应头是告诉浏览器我本次相应的是什么数据或者状态
https:原理同上
SSL(加密,让数据就是被截获也没用)
更安全的传输协议