自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

大致說明JSON 對象的相關(guān)使用字符

開發(fā)
不管在服務(wù)器端使用何種語言,在服務(wù)器端處理JSON 對象基本上就需要兩個步驟:針對編寫服務(wù)器端程序所用的語言,找到相應(yīng)的 JSON 解析器/工具箱/幫助器 API。

簡單地說,JSON 對象可以將 JavaScript 對象中表示的一組數(shù)據(jù)轉(zhuǎn)換為字符串,然后就可以在函數(shù)之間輕松地傳遞這個字符串,或者在異步應(yīng)用程序中將字符串從 Web 客戶機傳遞給服務(wù)器端程序。

這個字符串看起來有點兒古怪(稍后會看到幾個示例),但是 JavaScript 很容易解釋它,而且 JSON 可以表示比名稱/值對更復(fù)雜的結(jié)構(gòu)。例如,可以表示數(shù)組和復(fù)雜的對象,而不僅僅是鍵和值的簡單列表。

當(dāng)需要表示一組值時,JSON 不但能夠提高可讀性,而且可以減少復(fù)雜性:

  1. { "programmers": [  
  2.     { "firstName": "Brett", "lastName":"McLaughlin", "email": "brett@newInstance.com" },  
  3.     { "firstName": "Jason", "lastName":"Hunter", "email": "jason@servlets.com" },  
  4.     { "firstName": "Elliotte", "lastName":"Harold", "email": "elharo@macfaq.com" }  
  5.    ],  
  6. "authors": [  
  7.     { "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },  
  8.     { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" },  
  9.     { "firstName": "Frank", "lastName": "Peretti", "genre": "christian fiction" }  
  10.    ],  
  11. "musicians": [  
  12.     { "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" },  
  13.     { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }  
  14.    ]  

至此,您應(yīng)該從技術(shù)角度對如何在服務(wù)器端處理 JSON 有了基本的把握。本篇文章和本系列的 第 10 部分 不僅提供了技術(shù)層面的幫助,而且還向您展示了 JSON 是一種多么靈活、強大的數(shù)據(jù)格式。即使您不會在每個應(yīng)用程序中都使用 JSON,但優(yōu)秀的 Ajax 和 JavaScript 程序員的工具箱中總少不了 JSON 以備不時之需。#t#

我當(dāng)然很希望能夠分享您的JSON 對象使用經(jīng)驗以及您對何種語言更善于在服務(wù)器端處理 JSON 數(shù)據(jù)的高見。您可以訪問 Java 和 XML 新聞組(有關(guān)鏈接,請參閱 參考資料 部分)跟我聯(lián)系。享受JSON 對象和文本數(shù)據(jù)格式的樂趣吧。

  1. public void doPost(HttpServletRequest request, HttpServletResponse response)  
  2. throws ServletException, IOException {  
  3.  
  4. StringBuffer jb = new StringBuffer();  
  5. String line = null;  
  6. try {  
  7.     BufferedReader reader = request.getReader();  
  8.     while ((line = reader.readLine()) != null)  
  9.       jb.append(line);  
  10. } catch (Exception e) { //report an error }  
  11.  
  12. try {  
  13.     JSONObject jsonObject = new JSONObject(jb.toString());  
  14. } catch (ParseException e) {  
  15.     // crash and burn  
  16.     throw new IOException("Error parsing JSON request string");  
  17. }  
  18.  
  19. // Work with the data using methods like...  
  20. // int someInt = jsonObject.getInt("intParamName");  
  21. // String someString = jsonObject.getString("stringParamName");  
  22. // JSONObject nestedObj = jsonObject.getJSONObject("nestedObjName");  
  23. // JSONArray arr = jsonObject.getJSONArray("arrayParamName");  
  24. // etc...  

盡管看起來不明顯,但是上面的長字符串實際上只是一個數(shù)組;將這個數(shù)組放進 JavaScript 變量之后,就可以很輕松地訪問它。實際上,只需用點號表示法來表示數(shù)組元素。所以,要想訪問 programmers 列表的***個條目的姓氏,只需在 JavaScript 中使用下面這樣的代碼:

  1. String newJSONtext = people.toJSONString();     //value is "McLaughlin" 

不管在服務(wù)器端使用何種語言,在服務(wù)器端處理JSON 對象基本上就需要兩個步驟:
1.針對編寫服務(wù)器端程序所用的語言,找到相應(yīng)的 JSON 解析器/工具箱/幫助器 API。
2.使用 JSON 解析器/工具箱/幫助器 API 取得來自客戶機的請求數(shù)據(jù)并將數(shù)據(jù)轉(zhuǎn)變成腳本能理解的東西。

責(zé)任編輯:chenqingxiang 來源: 賽迪
相關(guān)推薦

2010-01-05 14:09:33

JSON數(shù)組

2010-01-07 09:31:27

Json數(shù)據(jù)異常

2010-01-07 18:19:01

JSON異步

2010-01-05 16:26:33

Javascript

2009-12-29 16:56:40

ADO.NET類和接口

2010-01-07 17:41:19

JSON定義法

2010-01-05 15:55:33

JQuery源碼

2010-01-06 15:18:51

Json插件

2009-12-11 14:01:10

VS 6.0

2010-01-05 17:35:09

JSON數(shù)組格式

2010-01-12 13:43:30

VB.NET字符轉(zhuǎn)換

2009-12-21 10:01:05

Oracle技術(shù)

2010-01-04 10:33:08

ADO DataSet

2010-01-07 15:52:23

JSON字符串

2010-01-12 17:47:31

C++語言

2010-01-05 16:33:35

使用JSON

2010-01-07 17:17:19

處理JSON

2009-12-21 17:29:43

ADO.NET模型

2009-12-11 09:42:00

Visual Stud

2010-01-06 15:35:06

JSON對象
點贊
收藏

51CTO技術(shù)棧公眾號