AJAX&&JSON
-
全稱:Asynchronous JavaScript and XML(非同步的 JavaScript 和 XML)
-
作用:指在不重新載入整個頁面的情況下,對網頁中的某個部分進行區域性重新整理
-
同步現象:客戶端傳送請求到伺服器端,當伺服器返回響應之前,客戶端都處於等待 卡死狀態
-
非同步現象:客戶端傳送請求到伺服器端,無論伺服器是否返回響應,客戶端都可以隨 意做其他事情,不會被卡死
-
執行原理:頁面發起請求,會將請求傳送給瀏覽器核心中的Ajax引擎,Ajax引擎會提交 請求到 伺服器端,在這段時間裡,客戶端可以任意進行任意操作,直到服務 器端將資料返回 給Ajax引擎後,會觸發你設定的事件,從而執行自定義的js 邏輯程式碼完成某種頁面功能。
-
原生JS的AJAX開發
開發步驟:
//1.AJAX -建立XMLHttpRequest 物件
var xmLhttp;
if (window . XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, safari
xmLht tp=new XMLHttpRequest();
eLse {
// code for IE6, IE5
xmLhttp=new ActiveX0bject("Microsoft. XMLHTTP");
//2.建立連線xmLhttp. open(method , utl, async)
//3.傳送請求
xmLhttp . send(string)備註:僅限於post請求
-
jquery版的ajax
-
JQuery是js的一個框架,因為ajax是js原生的,所以在JQuery中也對ajax做了封裝
-
常用的三種方式:
jQuery.get(url, [data], [callback], [type])
jQuery.post(url, [data], [callback], [type])
jQuery.ajax({option1:value1,option2:value2…})
//常用的option有如下:
//async:是否非同步,預設是true代表非同步
//success:成功響應執行的函式,對應的型別是function型別
//type:請求方式,POST/GET
//url:請求伺服器端地址
//contentType: 傳送資料的格式,如果要傳送的是json字串,需要指定其內容為application/json;charset=utf-8 ,如果是json物件或者 是 k=v&k=v 這種形式不加 contentType
-
JSON
-
全稱:JavaScript Object Notation JavaScript物件表示法 。
-
獲取資料:
-
json物件.鍵名
-
json物件["鍵名"]
-
陣列物件[索引]
-
-
JSON資料和Java物件的相互轉換
-
JSON解析器
-
常見的解析器:Jsonlib,Gson,fastjson,jackson
-
-
JSON轉為Java物件:
-
匯入jackson的相關jar包
-
建立Jackson核心物件 ObjectMapper
-
呼叫ObjectMapper的相關方法進行轉換
-
readValue(json字串資料,Class)
-
-
-
Java物件轉換JSON
-
匯入jackson的相關jar包
-
建立Jackson核心物件 ObjectMapper
-
呼叫ObjectMapper的相關方法進行轉換
-
轉換方法:
-
writeValue(引數1,obj):
-
引數1:
-
File:將obj物件轉換為JSON字串,並儲存到指定的檔案中
-
Writer:將obj物件轉換為JSON字串,並將json資料填充到字元輸 出流中
-
OutputStream:將obj物件轉換為JSON字串,並將json資料填充 到位元組輸出流中
-
-
-
writeValueAsString(obj):將物件轉為json字串
-
-
註解:
-
@JsonIgnore:排除屬性。
-
@JsonFormat:屬性值格式化
-
-
-
-
-