2009年5月28日木曜日

Google App Engineでデータの絞込み

本日は、下記を読みながらGoogle App EngineでIndexが作成される仕組みと
検索条件のつけ方(SQLで言うWhere節の指定の仕方について)読んで見た。

そんでもって、実際に使ってみた。

//最初は、検索対象をクラスで指定する。
Query query = pm.newQuery(Employee.class);
//ここで検索条件の指定。lastNameParamはSQLで言う
//バインドパラメータのようなもの。
query.setFilter("lastName == lastNameParam");
// order by の指定
query.setOrdering("hireDate desc");
//ここで、バインドパラメータの型を宣言する。
query.declareParameters("String lastNameParam");
//実際の検索処理。
List results = (List) query.execute("Smith");

こんな感じです。
インデックスがいつできるかと言うと、このWhere条件やソート条件を
指定したときにどうやら勝手に作成に走るようだ。

これらが、ソースコード上かかれると、裏側で
「datastore-indexes.xml」というファイルが作成され
それでインデックスが作成されるという流れのようです。

ちなみに本日より、ついにGoogleAppEngineForJavaも一般公開されたということで
私もいよいよUploadできるようになりました。

サンプルアプリケーションのゲストブックに今まで試す意味をこめて
データのUpdateをするボタンと自分が書き込みしたものすべてを削除するボタン
をつけてみたものです。

http://takes90.appspot.com/

0 件のコメント: