お題
前回は、Datastoreへのアクセスロジックをテストファーストで実装した。
今回は、ローカルでGAEアプリを起動して動作確認する方法について、さらっと書く。
GAE試行Index
- GAE/Java8試行(その0:「App Engineについて」)
- GAE/Java8試行(その1:「Java8でWebアプリ作ってデプロイ」)
- GAE/Java8試行(その2:「Javaアプリ解説」)
- GAE/Java8試行(その3:「Javaアプリテストコード解説」)
- GAE/Java8試行(その4:「Datastoreへのアクセスロジック」)
開発環境
# OS
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="17.10 (Artful Aardvark)"
# Java
$ java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
# IDE
みんな大好きIntelliJ IDEA
参考
実践
前回書いたソースをちょっと修正。
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String id = req.getParameter("id");
String name = req.getParameter("name");
DatastoreService ds = DatastoreServiceFactory.getDatastoreService();
Entity e = new Entity(KeyFactory.createKey("book", Integer.parseInt(id)));
e.setProperty("bookName", name);
ds.put(e);
}
まずはローカル開発用サーバーを起動。これは、以前書いた記事の通り。
$ mvn appengine:run
PostmanでPOSTして確認。
リクエストパラメータをDatastoreに登録するロジックであるものの、レスポンスを特に返さないので正常に処理されたか不明。
こんな時は(こんな時に限らないか・・・)、ローカル開発用コンソールを使う。
http://localhost:8080/_ah/admin
ここにアクセス。
すると、こんな画面が表示される。これが「ローカル開発用コンソール」。
そして、「List Entries」押下すると、Postmanでリクエストパラメータに積んだ内容がDatastoreに登録されていることがわかる。
※残念ながら”参照”のみで、値の編集はできない。
まとめ
DatastoreだけでなくTaskキューの状態も見れる。また、Datastore、Memcache、Taskキューといったリソースへのアクセス可否の制御もできる。これは、便利。