AJAX和JSON

AJAX

  • 在传统的Web应用模型下,客户机 (浏览器或者本地机器上运行的代码)向服务器发出请求。该请求是同步的,客户机等待服务器的响应。
  • 这正是传统Web 应用程序让人感到笨拙或缓慢的原因 —— 缺乏真正的交互性。按下按钮时,应用程序实际上变得不能使用,直到刚刚触发的请求得到响应。如果请求需要大量服务器处理,那么等待的时间可能很长
  • 传统的web应用程序缺点
    • 用户发送完请求,等待服务器请求处理完毕的将响应信息发送到浏览器,在此之前用户不能继续其他操作。
    • 多数请求只需要更新页面的局部内容,但是传统web应用程序无法有效进行局部内容的更新。
  • Ajax的出现,打破了web应用程序的困局
  • 什么是AJAX?
    • Asynchronous JavaScript and XML
    • 异步javascript和xml
  • AJAX采用异步交互过程。AJAX在用户和服务器之间提供了一个中间的媒介(ajax引擎),从而消除了传统web应用程序请求->处理请求(用户等待)->响应的缺陷
  • AJAX不是一项新技术,而是一些列成熟技术的新应用
  • AJAX中包含的技术
    • HTML和CSS 用于数据呈现和样式
    • DOM 实现页面动态显示和交互
    • XML 实现数据的交换与处理
    • XMLHttpRequest对象进行异步请求
    • JavaScript将以上技术融合在一起
  • 为什么要使用AJAX
    • 改善表单验证方式,不再需要打开新页面,也不再需要将整个页面数据提交
    • 不需刷新页面就可改变页面内容,减少用户等待时间
    • 按需获取数据,每次只从服务器端获取需要的数据 。
    • 读取外部数据,进行数据处理整合 。
    • 异步与服务器进行交互,在交互过程中用户无需等待,仍可继续操作

原生JS实现AJAX的操作:

  • 开发AJAX应用的步骤
    • 创建XMLHttpRequest对象
    • 注册XMLHttpRequest对象请求状态改变时的回调函数
    • 调用XMLHttpRequest对象的open方法打开请求连接
    • 调用XMLHttpRequest对象的send方法发送请求
  • XMLHttpRequest对象
    • XMLHttpRequest对象是JavaScript标准内置对象,AJAX请求和响应的处理皆是通过该对象的方法和属性完成。
    • 在IE6之前的IE版本中,XMLHttpRequest对象是由ActiveXObject形式提供,自IE7+,所有主流浏览器都可以直接通过XMLHtttpRequest创建该对象的实例

 

XMLHttpRequest对象属性和方法

方法/属性

方法/属性说明

setRequestHeader(name,value) 方法

设置请求头信息

 open(method,url,asyn,user,password)方法

通过指定请求方法和URL打开本次请求HTTP连接

 send(queryString) 方法

发送本次AJAX请求,该方法参数为请求参数

 abort() 方法

终止本次ajax请求

 getAllResponseHeaders() 方法

获取所有响应头信息

 getResponseHeader(name) 方法

获取指定头的头信息

 onreadystatechange  属性

AJAX请求状态发生改变时,会调用为该属性注册的回调函数

 readyState  属性

用于表示请求状态,请求状态值以及它的含义分别为:

 0=未初始化、1=正在加载、2=已经加载、3=交互中、4=完成

 status 属性

表示响应状态码,如404、500、200等

 responseText 属性

表示服务器端响应的字符串数据

 responseXML属性

表示服务器端响应的XML数据

  • jQuery作为最流行JS方法库,同样也提供AJAX支持,简化基于AJAX请求的web应用程序开发。
  • jQuery提供的进行AJAX请求的常用方法有:
    • ajax(url[,setting]),该方法是jQuery的AJAX最底层实现,通过该方法可以完成复杂的AJAX请求处理,通常建议使用基于它的高层方法开发AJAX应用程序,如get方法和post方法
    • get(url[,data][,callback][,type]),该方法是jQuery用于发送get方式AJAX请求的便捷方法,必需参数url用于指定处理请求的url,可选参数data用于指定请求参数,可选参数callback用于指定请求处理成功后的回调函数,可选参数type用于指定响应数据类型
    • post(url[,data][,callback][,type]),该方法是jQuery用于发送post方式AJAX请求的便捷方法,参数与get方法相同

JSON

什么是JSON?

    • JavaScript Object Notation
    • 是一种轻量级的数据交换格式
    • JSON是存储和交换文本信息的语法,类似 XML。
    • JSON易于人阅读和编写。同时也易于机器解析和生成
    • JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯,这些特性使JSON成为理想的数据交换语言。
    • JSON 比 XML 更小、更快,更易解析

JSON主要作用?

    • 用于数据传输和交换
  • JSON有两种语法结构
    • JSON对象
    • JSON数组

JSON对象的语法

  • “ 名称/值”对的集合,类似于Java语言中HashMap
    • JSON对象是一个无序的"名/值"对的集合,名与值之间使用":"分割。示例:{"name":"张三","age":20}
  • JSON数组的语法
    • 值的有序列表,在大部分语言中,它被理解为数组(array或List)。
    • 一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”分隔。如: ["张三","王五","田七"]

JSON数组的语法:

  • JSON值可以是以下类型:
    • 数字
    • 字符串
    • 逻辑类型
    • JSON数组
    • JSON对象
    • null
  • 示例:

{

"name":"张三","sex":"男","age":20,"married":true,

"address":{"province":"河北省","city":"石家庄市"}

}

Java中使用JSON数据:

  • JSON对象以键值对形式存在,类似语句Java中的Map集合;而JSON数组则类似Java中数组或者List集合。
  • 基于以上类比关系,Java开发人员可以很顺利的将Java中的对象、数组、集合等构建为JSON格式数据。
  • 通常我们会使用第三方类库完成对Java中数据和JSON格式数据之间相互转换的功能。
  • 常见的Java第三方json操作类库有:
    • json-lib :sourceforge提供的json生成解析库
    • gson :google提供的json生成解析库
    • fastjson : 阿里巴巴提供json生成解析库
    • jackson
  • 以上这些第三方类库的使用方式、包括提供的类名和方法相似。

 

生成JSON数据:

  • 通过json-lib下的两个核心类可以完成JSON数据的生成操作
    • net.sf.json.JSONObject : 用于生成JSON对象格式的数据
    • net.sf.json.JSONArray :用于生成JSON数组格式的数据
  • JSONObject生成JSON对象格式数据常用方法
    • static JSONObject fromObject(Object obj) 将Java对象转换为JSON
    • Object put(Object key,Object value) 将键值对放置到JSON对象中
    • String toString() 将JSON对象转换为JSON对象格式的字符串
  • JSONArray生成JSON对象格式数据常用方法
    • static JSONArray fromObject(Object obj) 将Java对象转换为JSON
    • Object add(Object obj) 将Java对象添加到JSON数组中
    • String toString() 将JSON数组转换为JSON数组格式字符串

 

 

 

 

 

 

 

 

 

 

 

 

 

资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push packageDeploy/Rollback。每个阶段都可以根据实际需求进行配置调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试部署,从而提高项目的整体质量可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值