面向B/S的数据传输

数据从浏览器传输到服务器的过程:

1.用户在浏览器的form表单中提交数据,经过post/get方法提交

2.这时的数据都是String类型,然后浏览器将数据转成二进制通过HTTP协议传输到服务器

3.服务器接收传输过来的数据,先转成String类型,然后再转成各自需求的类型,这个过程可以在浏览器端进行过滤

3.根据特定页面传过来的数据,提交各自的servlet处理

4.最后服务器再将servlet处理后的数据包含到jsp中

5.jsp先解析这个结果,然后将解析好的数据传输给浏览器

6.浏览器将接收到的jsp页面解析成html页面展现给用户

浏览器如何对接收的数据进行存储,数据保存在不同的域中使用范围也不一样,这个过程是如何实现的

四个域对象:

1.page域( pagecontext )

范围:数据仅在当前jsp页面有效,跳转到别的页面则无法访问到该数据

存储:服务器内存

2.request域( 或response域)

范围:一次请求范围内有效,有效范围是请求周期,刷新页面后重新计算,转发有效,重定向无效

存储:服务器缓存,没有存取操作,这个域中的数据只存在request和response的传输过程中

3.session域

范围:一次回话(从打开浏览器开始到关闭浏览器结束),或浏览器进程,只有浏览器不关闭或规定时间内产生请求,session范围内的数据一直有效

存储:服务器内存,每次回话都会产生一个sessionId,客户端cookie中一个,服务器内存中一个,如果浏览器没有禁用cookie,那么sessionid存在于cookie中,每次超过,如果浏览器禁用cookie,那么sessionid存在浏览器中

4.application域( 或applicationcontext,servletcontext)

范围:整个web应用,从服务器开启到服务器结束,application域中的数据是共享的,其它域中的数据时隔离的,只要web服务器不重启,一直有效

存储:服务器内存

现在就有个问题,这些数据都存储在服务器内存中,他们是如何存储的,服务器是如何区分数据时哪个域中的

关于web应用的编码

jsp------二进制-------html

第一个过程:pageEncoding="UTF-8"或者response.setCharactorEncoding("utf-8");

第二个过程:<meta name="content-type" content="text/html; charset=UTF-8">request.setCharactorEncoding("utf-8");

面向B/S的数据传输

时间: 2024-09-28 21:34:20

面向B/S的数据传输的相关文章

Python开发基础-Day24socket套接字基础2

基于UDP的socket 面向无连接的不可靠数据传输,可以没有服务器端,只不过没有服务器端,发送的数据会被直接丢弃,并不能到达服务器端 1 #客户端 2 import socket 3 ip_port=('127.0.0.1',8080) 4 BUFSIZE=1024 5 sock_client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #SOCK_DGRAM就是UDP 6 while True: 7 msg=input('>>').str

SAN和NAS

SAN针对海量.面向数据块的数据传输,而NAS则提供文件级的数据访问功能. SAN和NAS都基于开放的.业界标准的网络协议:用于SAN的光纤通道协议和用于NAS的网络协议(如TCP/IP). SAN的应用范围更为广泛,而且可以提供对NAS设备的存储,而NAS一般只限于文件级数据访问的应用.如果不考虑它们之间的差别,SAN和NAS在今天的企业级存储中都发挥着重要的作用,比传统的服务器连接存储拥有更多的优势. SAN的关键特性SAN作为网络基础设施,是为了提供灵活.高性能和高扩展性的存储环境而设计的

Python开发基础-Day23try异常处理、socket套接字基础1

异常处理 错误 程序里的错误一般分为两种: 1.语法错误,这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正 2.逻辑错误,人为造成的错误,如数据类型错误.调用方法错误等,这些解释器是不会进行检测的,只有在执行的过程中才能抛出的错误 异常 异常是python解释器在运行程序的过程中遇到错误所抛出的信息,如: Python异常种类: 常用异常: 1 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x 2 IOError 输入/输出异

SAN,NAS,DAS及iSCSI其架构之间区别

随着计算机技术的发展和广泛应用,存储技术已经得到了业界和各个应用领域专业人士的重视.数据量的迅速增长为企业的发展提出了新的问题和要求,如何确保数据的一致性.安全性和可靠性,如何实现不同数据的集中管理,如何实现网络上的数据集中访问,如何实现不同主机类型的数据访问和保护等等.所有这些都呼唤着新的网络存储技术及其产品的出现. SAN与NAS技术和产品的出现不仅仅拓展了网络发展的空间,更为重要的是,它们将网络技术与新兴的存储领域有机地结合起来,在IT业发展过程中起到了不可忽视的作用. SAN和NAS经常

协议初学

协议 网络通信协议是一种网络通用语言,为连接不同操作系统和不同硬件体系结构的互联网络引提供通信支持,是一种网络通用语言. 常见的网络通信协议有:TCP/IP协议.IPX/SPX协议.NetBEUI协议等. TCP/IP分层协议 共分为四层(每一层都呼叫它的下一层所提供的网络来完成自己的需求): 网络接口层(又称链路层).网络层(又称互联层).传输层.应用层. 链路层(网卡和网卡驱动程序): 物理层负责将比特流转换成信号,并传递给线缆.既不知道信号会发往何处,也不在意某一位是否会在某处丢失. 数据

【2017年最新】iOS面试题及答案

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 20.0px "PingFang SC Semibold"; color: #464646 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px "PingFang SC"; min-height: 21.0px } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 15.0px

Python开发基础----异常处理、socket套接字基础1

异常处理 错误 程序里的错误一般分为两种: 1.语法错误,这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正 2.逻辑错误,人为造成的错误,如数据类型错误.调用方法错误等,这些解释器是不会进行检测的,只有在执行的过程中才能抛出的错误 异常 异常是python解释器在运行程序的过程中遇到错误所抛出的信息,如: Python异常种类: 常用异常: 1 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x 2 IOError 输入/输出异

Python开发基础----socket套接字基础2

基于UDP的socket 面向无连接的不可靠数据传输,可以没有服务器端,只不过没有服务器端,发送的数据会被直接丢弃,并不能到达服务器端 1 #客户端 2 import socket 3 ip_port=('127.0.0.1',8080) 4 BUFSIZE=1024 5 sock_client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #SOCK_DGRAM就是UDP 6 while True: 7 msg=input('>>').str

python基础之try异常处理、socket套接字基础part1

异常处理 错误 程序里的错误一般分为两种: 1.语法错误,这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正 2.逻辑错误,人为造成的错误,如数据类型错误.调用方法错误等,这些解释器是不会进行检测的,只有在执行的过程中才能抛出的错误 异常 异常是python解释器在运行程序的过程中遇到错误所抛出的信息,如: Python异常种类: 常用异常: 1 AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性x 2 IOError 输入/输出异