AJAX、JSON

Ajaxの操作

XMLHttpRequestオブジェクトを作成します。

XT = VARのNULL ;
   // 取得ステップAJAXエンジンオブジェクト
  IF(window.XMLHttpRequest){ // オブジェクトはブラウザのバージョンAJAX作成 
XT = 新しい新規のXMLHttpRequestを(); //は、実施形態の新しいバージョンを作成 
  } { 
XT = 新しい新しい ActiveXObjectを( "Microsoft.XMLHTTP"); // バージョンを作成するための古い方法 
  }

状態は、機能をトリガするためにバインドされています

 // リスニングステップバインド 
  xt.onreadystatechangeは=コール; // ここでコールバック関数を強制的に

openメソッドを使用してサーバーへの接続を確立

 // ステップバインドアドレス 
  xt.open(「GET」、「/ AjaxTest / AjaxServlet名=コリン?」、trueに);
     // 最初のパラメータ第二引数の要求を指し、最初のパスを指し、三つのパラメータを指すTRUE FALSE同期非同期でない 
  ( "POST"、 "/ AjaxTest / AjaxServlet"、xt.open 真の); 
    POSTリクエストメソッド
xt.setRequestHeader( "コンテンツタイプ"、「ファイルアプリケーション/ X-WWW-形-urlencoded " ); 
    また、リクエストヘッダを追加する必要が
    サーバーに送信エンコードのクライアントを示す意味は、URLエンコードされたテキストです

サーバにデータを送ります

要求モードの取得
xt.sendを(); 
    

POSTリクエストメソッドの
xt.send( "ユーザ名=" +名)。

データコールバック関数の戻りの処理

   // コールバック関数を作成する
前の状態を決定しない
      関数呼び出し(){ 
     VARテキスト =   xt.responseText; 
     アラート(テキスト); 
      } 
に基づいて、状態決意
    // HTTPサーバレスポンスステータスコード[正常200_; 400オングストローム例えば要求エラー:要求の構文]; 403_ないアクセス、リソースが存在しない404_アクセス; 500_内部サーバーエラー}
     // プロパティreadyStateの応答のステータスコードXMLHttpRequestオブジェクト5 [0_XMLHttpRequestの初期化が完了していない。1_XMLHttpRequestオブジェクトは、送信要求を開始し、2_XMLHttpRequest完了オブジェクト要求送信; 3_XMLHttpRequestオブジェクトは応答の読み出しを開始; 4_XMLHttpRequestオブジェクトは、応答が】終了読み取り
の状態を決定した後に
      )関数呼び出しを({ 
      IF(xt.readyState == == 200 xt.status &&である4 ){ 
     VARテキスト =   xt.responseText ; 
     アラート(テキスト); 
      } 
      }

サンプルコード

<input type = "ボタン"値 = "取得のonclick = "テスト()"要求"> </ button>の
  <SCRIPT> 
      のvar XT = ヌル; 
      VAR A = 0 ; 
    機能テスト(){ 

        IF {(window.XMLHttpRequest)
            XT = 新しい新規のXMLHttpRequest(); 


        } { 
            XTは = 新しい新しい ActiveXObjectを( "Microsoft.XMHTTP" ); 
        } 

        //// 特性がXMLHttpRequestオブジェクトに応答ステータスコード5をreadyStateの5
         // [0_XMLHttpRequest初期化が完了していない;
         // 1_XMLHttpRequestオブジェクトのリクエストの送信を開始;
         //完成送信するために2_XMLHttpRequestオブジェクト要求;
         // 3_XMLHttpRequestオブジェクトは、応答を読み始める;
         // 4_XMLHttpRequestオブジェクトが応答]が終了読ん
         //は、メソッドのonreadystatechangeにトリガの状態を変更

        xt.onreadystatechange = ;コール

        xt.open(「GET」、「/アップロードを? = ZYM名」、真の
        xt.send()


    } 

    関数コール(){ 
      IF(xt.readyState == == 200がxt.statusある。4&){
           // 追加この条件が値を取るように決定されなければならない 
          responseText = VAR XT。 responseText;
           // はconsole.log(responseText); 
          アラート(+ responseText)
      } 

    }




  </ SCRIPT>

JSON

インポートのjarパッケージ

コモンズ-beanutils.jarは、Javaのリフレクションパケット提供
コモンズ・collections.jarパッケージの拡張コレクション
コモンズ-lang.jar強化キット
コモンズ-logging.jarログ実装のパッケージを提供
ezmorph-1.0.4.jar
JSON-libが-2.2.2-jdk15.jar

文字列のJSONオブジェクトにPserson

パブリック 静的文字列objectToJson(人物P){ 
文字列str = NULL ; 
JSONObjectジョー = JSONObject.fromObject(P)。
STR = jo.toString()。// 转成字符串
戻りSTR。
}

オブジェクトのJSON文字列への変換

パブリック 静的人jsonToPerson(文字列STR){
 // 文字列JSONに最初の文字列 
JSONObjectオブジェクト= JSONObject.fromObject(STR);
 // ;順番に人物オブジェクトをJSON文字列toBean()に 
人P =(人物)JSONObject .toBean(オブジェクト、人。クラス);
 戻りP; 
}

配列のコレクションは、JSONに変換され、

パブリック 静的文字列listToJson(リストの<person> のLi){ 
文字列str = NULL ; 
JSONArray JA = JSONArray.fromObject(LI)。
STR = ja.toString()。
リターンSTR。
}

セットJSONに配列を変換します

パブリック 静的リスト<人> jsonToList(文字列STR){ 
一覧 <人>リスト= 新しい新しいのArrayList <人>(); // オブジェクトの新しいセットを取得 
JSONArray JA = JSONArray.fromObject(STR); // 今の文字列JSONArrayに変換 
JSONObjectジョー= nullはのためにint型 I = 0; I <ja.size();私は++){ // JSONArray反復 
ジョー= ja.getJSONObject(I)を; // 内のすべてのJSONArray JSONObject取得 
リストを。 [追加]((人)JSONObject.toBean(ジョー、人。クラス)); // コレクションにオブジェクトとして各バンドルJSONObject UNを変換中
}
 の戻りリスト; 
}

配列JSONに配列を変換します

パブリック 静的人[] jsonToArray(文字列str){ 
JSONArray JA = JSONArray.fromObject(STR)。
人[] P   =(人[])JSONArray.toArray(JA、人。クラス)。
リターンのp; 
}

文字列のJSONを設定するためのマップを変換します

パブリック 静的文字列mapToJson(MAP <整数、人> M){
 戻りJSONArray.fromObject(M).toStringを(); 
}

 

 

 

 

 

 

おすすめ

転載: www.cnblogs.com/taozizainali/p/11105506.html