データストアとオブジェクト検索 (5/7)
作成:2010-05-03 14:55
更新:2010-05-03 14:55
更新:2010-05-03 14:55
■index.htmlの作成
では、最後になりましたが、index.htmlを作成しましょう。ここでは、ページにアクセスすると、Ajaxを利用してサーブレットにアクセスし、データの一覧をテーブルに表示するようにしています。
テーブルでは、ID番号、タイトル、それに「Edit」「Del」といったリンクを用意してあります。ID番号をクリックすると、そのデータの詳細が表示されます。またタイトルをクリックすると、そのURLにジャンプします。(Edit,Delは、それぞれデータの編集・削除をするためのリンクで、次回作成します)
ここでは、<body onload="getData(null);">というようにして、ロード時にgetDataを呼び出しています。そしてcallback関数で、返されたJSONデータから値を取り出してテーブルを生成し表示しています。全データを表示する場合と、指定のIDのデータ1つだけを表示する場合で表示の仕方を変えてありますが、そう難しいものではありません。実際に試してみるとすぐに仕組みはわかるでしょう。
というわけで、今回はJDOを使ったデータ検索(データの取得)についてのみ説明しました。
テーブルでは、ID番号、タイトル、それに「Edit」「Del」といったリンクを用意してあります。ID番号をクリックすると、そのデータの詳細が表示されます。またタイトルをクリックすると、そのURLにジャンプします。(Edit,Delは、それぞれデータの編集・削除をするためのリンクで、次回作成します)
ここでは、<body onload="getData(null);">というようにして、ロード時にgetDataを呼び出しています。そしてcallback関数で、返されたJSONデータから値を取り出してテーブルを生成し表示しています。全データを表示する場合と、指定のIDのデータ1つだけを表示する場合で表示の仕方を変えてありますが、そう難しいものではありません。実際に試してみるとすぐに仕組みはわかるでしょう。
というわけで、今回はJDOを使ったデータ検索(データの取得)についてのみ説明しました。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>データの表示</title> <script type="text/javascript" src="lib.js"></script> <script type="text/javascript"> <!-- function callback(request){ var json = eval(request.responseText); var res = ''; if (json.length == 1){ res += '<tr><td>' + json[0].id +'</td></tr>'; res += '<tr><td>' + json[0].title +'</td></tr>'; res += '<tr><td>' + json[0].url +'</td></tr>'; res += '<tr><td>' + json[0].comment +'</td></tr>'; } else { for (var i = 0;i < json.length;i++){ res += '<tr><td><a href="javascript:return false;" onclick="getData(' + json[i].id +');">' + json[i].id + '</a></td>'; res += '<td><a href="' + json[i].url + '">' + json[i].title + '</a></td>' + '<td><a href="edit.html?id=' + json[i].id + '">Edit</td>' + '<td><a href="del.html?id=' + json[i].id + '">Delete</td></tr>'; } } var obj = document.getElementById("datatable"); obj.innerHTML = res; } //--> </script> </head> <body onload="getData(null);"> <h1>データの表示</h1> <table id="datatable" border="1"> <tr> <td>wait...</td> </tr> </table> <br> <div><a href="add.html">データの新規追加</a></div> </body> </html>
※関連コンテンツ
「Google App Engine for Java(GAE/J)プログラミング入門」に戻る