JSP同步请求和html+ajax异步请求的两种方式
war包:包括所有的项目资源,只要从浏览器发起的都是属于请求,然后把资源响应给浏览器,解析显示出来。
方式一:HTML+ajax(跳转静态html也是属于请求响应,把整个页面响应给浏览器。)
html不需要依赖服务器就可以进行页面展示,只是通过请求获取json数据,然后进行解析,用js进行渲染,显示到页面上
同步请求:会刷新整个页面,会将整个页面发给浏览器进行解析,显示在浏览器上。比如:form表单请求,a标签发送请求,返回的不是json字符串,而是直接响应到具体的一个html界面
(请求转发是一次请求,然后响应,这个速度快,重定向是两次请求,响应)
ajax同步请求的话,如果后面的函数用到这个请求的返回值,那么必须用同步请求,等待这个请求有响应后,才会执行后面的所用的东西。相当于只有一个主线程(后面依赖前面响应的结果)
ajax异步请求的话,后面的不需要等待这个请求的响应。相当于开启了子线程。
异步请求:不会刷新整个页面,js向服务端发送请求(ajax请求),然后服务接收请求,以json的数据形式传递到客户端,js进行渲染,显示到浏览器上
ajax请求必须要绑定事件,确实是什么时候发送请求?(页面加载事件,一个页面可以写多个页面加载事件$(function () { }),点击事件,鼠标移开事件)
.post和.post和.post和.get和.ajax里面前两个都是发送的异步请求,.ajax里面 前两个都是发送的异步请求,.ajax里面前两个都是发送的异步请求,.ajax可以发送同步请求。里面的参数都是字符串的格式
.post和.post和.post和.get里面的第二个data是一个json格式的数据{key:value,key:value…}
ajax发出的请求,返回值必须交给ajax去处理,不能在servlet里面重定向跳转页面。
*****a标签跳转发出get请求服务器上的静态资源,请求一个静态HTML页面,其实是调用tomcat里面默认的servlet,去webapps的下面去找对应名称的html,找到了就直接将这个HTML页面响应给浏览器。
找不到就会404错误(404其实也是一个响应)
***** ajax发送请求实现页面跳转问题:
从Ajax的原理说起,Ajax实际上就是通过XMLHttpRequest来发送请求对象向服务器发送异步请求,从服务器获取数据,然后使用JS来操作DOM而更新页面。
当Ajax请求后,返回的只能是字符流,(返回的是纯文本流,可以是xml格式,js格式,也可以是字符串格式)不能直接转发,重定向到具体的jsp,html上面。所以要使页面跳转,我的解决方案是,将数据用Map返回,然后将数据交由js去解决,
方式二:JSP+el表达式+jstl标签库
需要依赖服务器,并把需要显示的数据在jsp上拼接好,然后jsp本质就是一个servlet,然后把这个jsp转变后的页面,响应给浏览器。
jsp动态的数据,是通过servlet里面转发或者重定向到一个jsp里面,在jsp里面通过四个作用域设置属性,pagecontext,request,session,application
我们就可以在jsp里面通过el表达式(替换掉了java百分号,里面是写java代码)和jstl标签进行对jsp页面进行拼接,然后把整个jsp转变成一个有关页面的字符串响应给浏览器,然后解析,在页面进行显示
JSP同步请求和html+ajax异步请求的两种方式相关推荐
- jQuery实现Ajax异步请求的三种方式
jQuery实现Ajax jQuery框架对js原生的ajax进行了封装,封装后的ajax相比原生就变的更加简洁方便,而且功能更加丰富 常用的三种ajax实现的方法: get:$.get(url,[d ...
- ajax是一种异步的请求方式,ajax异步请求的三种方式
Ajax能够在无需加载整个页面的情况下,能够更新部分网页内容,可以减小服务器的资源浪费. ajax大体上有四种实现方式,由于基于JS的实现方式太过于复杂,基本上用不到,所以就暂不贴出其实现代码了. 1 ...
- JavaScript实现同步Ajax请求的两种方式
JavaScript的Ajax请求默认是异步的,有以下两种方式能让Ajax请求变成同步 方式一 使用ES7的Async和Await async function main(){const env = ...
- 探讨Netty获取并检查Websocket握手请求的两种方式
在使用Netty开发Websocket服务时,通常需要解析来自客户端请求的URL.Headers等等相关内容,并做相关检查或处理.本文将讨论两种实现方法. 方法一:基于HandshakeComplet ...
- Vue3(撩课学院)笔记09-axios简介,发起get请求的两种方式,发起带参的get及post请求,发起并发请求,并发请求结果将数组展开,axios全局配置,axios配置及封装,请求和响应拦截
1.axios简介 axios是基于promise可以用于浏览器和node.js的网络请求库,在服务器端使用原生node.js,在浏览气短使用ajax(即XMLHttpRequests) 2.axio ...
- java发送http get请求的两种方式
长话短说,废话不说 一.第一种方式,通过HttpClient方式,代码如下: public static String httpGet(String url, String charset)throw ...
- $.ajax传递数组的两种方式
1.第一种方式 前台代码 var arrays= [];//定义要传递的数组 arrays.push("1"); arrays.push("2"); array ...
- ajax异步请求的三种格式
以一个简单的的form表单提交样式为例 <!DOCTYPE html> <html> <head><title>ajax</title>&l ...
- .Net Core下发送WebRequest请求的两种方式
1.使用RestSharp.NetCore 2.使用WebApi请求方式 转载于:https://www.cnblogs.com/mailaidedt/p/6525501.html
最新文章
- 在Fragment中实现百度地图,定位到当前位置(基于SDKv2.1.0)
- 全球及中国综艺节目产业营销策略分析及创新格局规划建议报告2021-2027年
- 组合模式_设计模式结构性:组合模式(CompositePattern)
- 面试后要请你吃饭_做了15年HR,面试4千人,发现优秀的会计能将这些题应答如流...
- MS-SQL CLR 扩展函数包 CLR_FunctionS!
- windows下在一台电脑上配置多个git账号
- 椭圆曲线密码学导论pdf_椭圆曲线密码学
- java spring druid_Spring配置Druid连接池
- 监控linux时间不对,shell 计算故障时间 配合web监控
- 动态规划-最长上升子序列(LIS)
- 《商务与经济统计》学习笔记(三)
- Matlab模拟布朗运动
- 论大学学霸是怎样炼成的……
- 网络游戏封包基础知识
- RQNOJ 341 星门跳跃【解题报告】
- [渝粤教育] 无锡商业职业技术学院 导游业务 参考 资料
- 记录一个获取颜色RGB值的小技巧
- R 线性模型 检验异常观测值
- C#:图片无损压缩文件大小
- 给硬件工程师的入门课-电子工程师常用网站