11-23 SSM4

Ajax

同步请求 :全局刷新的方式  -> synchronous请求 客户端发一个请求,服务器响应之后你客户端才能继续后续操作,请求二响应完之后才能发送后续的请求,依次类推

有点:服务器负载较小,但是由于服务器相应的是整个页面资源,容易造成资源重复加载浪费,服务器相应的数据没有进行对应的选择刷新 -> 局部刷新

异步请求:asynchronous你只要发,不管服务器有没有给你响应,你依然可以继续第二次请求的发送,这是一种异步的方式  调用回调函数把响应返回给你

客户端 ->异步引擎对象xmlHttpRequets(队列结构,有个口进,有个口出,队列里面存下请求,再一个一个把请求发给服务器) -> 服务器  数据传输的载体,现在用的是xml数据格式的数据。

AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML"。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在基本都是json格式)。

特点:

  • 与服务器异步交互
  • 浏览器页面局部刷新
  • 排队导致的服务器压力过大也是其中的一个特点

java  对象 -> json xml三个之间的转换

Ajax的实现

1.原生版本  

2.第三方的原生的ajax封装:jquery axios 

基于jquery对ajax的实现

1.回调函数的概念,不是手动调用的函数,写事件函数时,其实括号内部写的就是回调函数

axios.click(function (){})

加上Requetsbody表示他是一个数据了

post请求完毕

现在->get  支持url传值  也支持内部自己写data传值

jquery提供的对ajax再次封装的简写!

$("btn").click(fcuntion (){

 $.get("/test3/test1.do?name=lisi&age=23),function(rs){
        $("content").text(rs)};

})

只适用于get

根据bid去查询书籍

注入service 接收一个bid int id

其实调用了book.toString方法

数据想对象.属性调用出来  因为此时rs是一个字符串  

rs是后台相应的一个字符串

下面这种方式才可以拿出

问题:把字符串转换成一个js对象var obj= {}

使用parseJson  把字符串{“k”:"v","k1":"v1'}转换成js对象

但是对于后台的拼接就会显得特别麻烦 

后台是得到一个java对象,前端需要得到对象的属性,把字符串变成js对象{} 就是json

json就是带有格式的一个字符串 非常类似于js的对象格式

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。
JSON是用字符串来表示Javascript对象,例如可以在Servlet中发送一个JSON格式的字符串给客户端Javascript,Javascript可以执行这个字符串,得到一个Javascript对象。

Json语法

数据在名称/值对中

数据由逗号分隔花括号{}

保存对象方括号[]

保存数组对象数组:[{},{},{}]

json的key必须使用双引号引起

对象数组:

json就是用于跨平台的数据传递

后端:java对象转换为json  有相应的jar包

前端:把字符串转换为js对象 Json.parse(rs)  rs是一个字符串 

json -> 字符串 json.Stringfy

java后台java对象与json的转换

1.使用第三方的json的jar包:jackson(spring默认) fastjson(阿里提供) jsonlib

Spring使用jackson

1.导入依赖

然后SpringMvc帮你做下面的事

2.配合@ReponseBody把java对象转换为json字符串

@RequestBody:把json字符串转换为java对象

但是没有postJson

更改首页的原生写法:

js动态加cur这个类选择器  但是我们的页面时全局刷新

ajax应用

实现表单  发起ajax请求  数据不是放到域当中了  使用js的DOM操作来动态操纵元素

调一下位置:

页面一加载  我们发起所谓的ajax请求

发起给请求

@("document").ready(function (){

})

@("searchBtn").get

一次性取出数据:

serializable  序列化表单

得到data的字符串格式

data通过url传了过去 就不管了

写controller

响应的是list.do 返回的是Page对象  需要一个ResponseBody

数据给到前台 然后前台渲染即可

java对象->map

js代码循环实现数据渲染

完成下一页

页面刷新执行一次

实现情况:追加不行

点击分类:实现页码复位

实现价格排序

 shiyongshi'yong

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/214804.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

什么是网络安全工程师,你想知道的都在这里!

随着互联网的发展和大数据时代的到来,网络已经日渐深入到我们生活、工作中的方方面面,社会信息化和信息网络化,突破了应用信息在时间和空间上的障碍,使信息的价值不断提高。但是,与此同时,网页篡改、计算机…

3D卷积的理解

卷积核不仅需要在高宽这两个维度上进行滑动,还需要在时间维度上进行滑动

模拟退火算法应用——求解函数的最小值

仅作自己学习使用 一、问题 需求: 计算函数 的极小值,其中个体x的维数n10,即x(x1,x2,…,x10),其中每一个分量xi均需在[-20,20]内。因此可以知道,这个函数只有一个极小值点x (0,0,…,0),且其极小值是0&…

PHP预约上门回收废品系统的代码披露

PHP预约上门回收废品系统的代码披露 <?phpnamespace app\admin\controller;class Code {public function getTopDomainhuo(){error_reporting(0);$host $_SERVER["HTTP_HOST"];$matchstr "[^\\.]\\.(?:(" . $host . ")|\\w{2}|((" . $ho…

node-red - 节点实战总结1

node-red - 节点实战总结1 二、功能2.1 循环(for\while) 三、网络四、序列五、解析六、存储七、协议7.1 modbus协议7.2 opcua 八、formats8.1 时间格式化与时区转换 二、功能 2.1 循环(for\while) 安装节点node-red-contrib-loop-processing,该节点支持三种方式的循环&#xf…

classifier-free-guidance 扩散模型引导生成

浅谈扩散模型的有分类器引导和无分类器引导 - 知乎这篇文章主要比较一下扩散模型的引导生成的三种做法的区别。它们分别是用显式分类器引导生成的做法&#xff0c;用隐式无分类器引导的做法和用CLIP计算跨模态间的损失来引导生成的做法。 Classifier-Guidance: Diffusion Mode……

虽不想承认,但这就是CSGO游戏搬砖行业的现状

CSGO搬砖日常出货更新 其实整个搬砖市场&#xff0c;现在已经变得乌烟瘴气&#xff0c;散发着“恶臭”。我个人非常鄙视那些虚有其表&#xff0c;大小通吃的做法&#xff0c;那些甚至连搬砖数据都看不懂的人&#xff0c;也出来吹嘘着“实力强大&#xff0c;经验丰富”。这个世界…

利用 docker 实现JMeter分布式压测

为什么需要分布式&#xff1f; 在工作中经常需要对一些关键接口做高QPS的压测&#xff0c;JMeter是由Java 语言开发&#xff0c;没创建一个线程&#xff08;虚拟用户&#xff09;&#xff0c;JVM默认会为每个线程分配1M的堆栈内存空间。受限于单台试压机的配置很难实现太高的并…

uniapp开发的微信小程序进行代码质量控制,分包+压缩js+组件按需注入等

小程序代码分包的操作请看另外一篇文章&#xff1a;uniapp分包优化&#xff0c;包括分包路由跳转规则-CSDN博客 JS文件压缩&#xff1a;在工具「详情」-「本地设置」中开启「上传代码时自动压缩脚本文件」的设置 代码包&#xff1a;组件 > 启用组件按需注入解决办法 在小程…

视频直播美颜SDK对比测评,技术深度剖析

美颜滤镜作为直播体验的关键一环&#xff0c;成为直播平台竞争的焦点。在美颜滤镜的背后&#xff0c;不同的视频直播美颜SDK各有千秋&#xff0c;下文&#xff0c;小编将对几个主要的视频直播美颜SDK进行对比测评&#xff0c;并深度剖析其技术特点。 一、美颜SDK简介 首先&a…

关于ps提示找不到vcruntime140.dll丢失的5个修复教程

关于vcruntime140.dll丢失的5个修复教程。我们都知道&#xff0c;在使用ps软件的过程中&#xff0c;有时候会出现一些错误提示&#xff0c;其中最常见的就是“vcruntime140.dll丢失”。那么&#xff0c;究竟什么是vcruntime140.dll呢&#xff1f;它为什么会丢失呢&#xff1f;又…

竞赛选题 题目:基于FP-Growth的新闻挖掘算法系统的设计与实现

文章目录 0 前言1 项目背景2 算法架构3 FP-Growth算法原理3.1 FP树3.2 算法过程3.3 算法实现3.3.1 构建FP树 3.4 从FP树中挖掘频繁项集 4 系统设计展示5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于FP-Growth的新闻挖掘算法系统的设计与实现…