SimpleDB4GAE ~SimpleDBをGAEで使う~
SimpleDB4GAEの利用 (先生から指示された場合のみ)
GAEからSimpleDBにアクセスするためのライブラリとして、おちラボでは
を公開している。このサイトから jar ファイルをダウンロードし、かつ、Koherent-App-Engine-Library-for-Java からも jarファイルをダウンロードし、クラスパスに入れること。
SimpleDB4GAEプログラミング
アクセスインスタンスの生成
String url ="sdb.amazonaws.com";
String access_key = "XXXXXXXXXXXXXXXXXXXX";
String secret_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxx";
SimpleDB sdb= new SimpleDB(url,access_key,secret_key);
追加
putAttributeメソッドを利用する。データ追加の考え方として、一意の行を示すアイテム名を持った行にたいして、Mapに格納したペアデータ(属性名、値)を設定していく。
HashMap<String, String> map = new HashMap<String,String>();
map.put("aaa", input);
map.put("abcde", "ooooooo");
sdb.putAttributes("ドメイン名", "アイテム名", map);
検索(アイテム名による指定)
Map result =sdb.getAttributes("ドメイン名", "アイテム名");
String[] tt = (String[]) result.get("属性名");
System.out.println(tt[0]);
検索(Query利用)
SQLのようなQueryでデータを検索することができる
List<Map> result = sdb.select(query);
for(Map m : result){
String[] tt = (String[]) m.get("属性名");
System.out.println(tt[0]);
}
検索結果は文字列配列に格納されていることに注意してください。上記の例では、aaaという属性を持った値を取り出しています。