コールバック関数とJsonを返す3つの方法
4010 ワード
コールバック関数とJsonを返す3つの方法
1.コールバック関数:
onreadystatechangeイベント
リクエストがサーバに送信されると、応答ベースのタスクを実行する必要があります.
readyStateが変更されるたびにonreadystatechangeイベントがトリガーされます.
readyStateプロパティには、XMLHttpRequestのステータス情報が格納されます.
XMLHttpRequestオブジェクトの3つの重要なプロパティを次に示します.
ツールバーの
説明
onreadystatechange
readyStateプロパティが変更されるたびに呼び出される関数(または関数名)が格納されます.
readyState
XMLHttpRequestのステータスが保存されています.0から4に変化する.・0:要求未初期化(sendメソッドを呼び出さない)・1:サーバ接続確立(socket接続済み)・2:要求受信(パラメータ取得、actionメソッド実行なし)・3:要求処理中(actionメソッド実行中、未実行)・4:要求完了、応答完了(応答済み、最終データ取得可能)
status
200:「OK」(応答の状態)404:ページが見つかりません(ページが見つかりません)
onreadystatechangeイベントでは、サーバが処理の準備ができているときに実行するタスクを規定します.
readyStateが4に等しく、ステータスが200の場合、応答が完了したことを示します.
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
2.Jsonを返す3つの方法
1つ目:
2つ目:
3つ目:
メッセージ変換器の構成
1.コールバック関数:
onreadystatechangeイベント
リクエストがサーバに送信されると、応答ベースのタスクを実行する必要があります.
readyStateが変更されるたびにonreadystatechangeイベントがトリガーされます.
readyStateプロパティには、XMLHttpRequestのステータス情報が格納されます.
XMLHttpRequestオブジェクトの3つの重要なプロパティを次に示します.
ツールバーの
説明
onreadystatechange
readyStateプロパティが変更されるたびに呼び出される関数(または関数名)が格納されます.
readyState
XMLHttpRequestのステータスが保存されています.0から4に変化する.・0:要求未初期化(sendメソッドを呼び出さない)・1:サーバ接続確立(socket接続済み)・2:要求受信(パラメータ取得、actionメソッド実行なし)・3:要求処理中(actionメソッド実行中、未実行)・4:要求完了、応答完了(応答済み、最終データ取得可能)
status
200:「OK」(応答の状態)404:ページが見つかりません(ページが見つかりません)
onreadystatechangeイベントでは、サーバが処理の準備ができているときに実行するタスクを規定します.
readyStateが4に等しく、ステータスが200の場合、応答が完了したことを示します.
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
2.Jsonを返す3つの方法
1つ目:
@Autowired
MyFoodDaoImpl mdi;
/**
* json
* OutPutStream os;
* os.write( json-lib json .getByte())
* @param foodname
* @param out
* @return
* @throws IOException
*/
@RequestMapping(value="/queryFood",method={RequestMethod.GET,RequestMethod.POST})
public String queryFood(String foodname,OutputStream out) throws IOException{
List
2つ目:
/**
* + @ResponseBody
*
* out.write(jsonStr.getBytes("UTF-8"));
* @param foodname
* @return
* @throws IOException
*/
@ResponseBody
@RequestMapping(value="/queryFoodReturn",method={RequestMethod.GET})
public byte[] queryFoodReturn(String foodname) throws IOException{
List
3つ目:
@ResponseBody
@RequestMapping(value="/queryFoodList",method={RequestMethod.GET})
public List
メッセージ変換器の構成
text/html
application/x-www-form-urlencoded
text/html
application/x-www-form-urlencoded
com.fasterxml.jackson.core
jackson-core
2.6.0
org.codehaus.jackson
jackson-core-asl
1.9.12
com.fasterxml.jackson.core
jackson-annotations
2.6.0
com.fasterxml.jackson.core
jackson-databind
2.6.0
org.codehaus.jackson
jackson-mapper-asl
1.9.12