削除のフォームを用意する
では、DeleteServlet
を使ってオブジェクトを削除するためのフォームを用意しましょう。「war」内に「del.html」としてフォームを用意しておきます。
<?xml version="1.0" encoding="utf-8" ?> <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>SampleData Delete</title> </head> <body> <h1>SampleData</h1> <table> <form method="post" action="/del"> <tr> <td>ID:</td> <td><input type="text" name="id" /></td> <td><input type="submit" /></td> </tr> </form> </table> </body> </html>
これで削除処理は完成です。実際にdel.htmlにアクセスして、ID番号を送信してみましょう。list.groovyに戻り、オブジェクトが削除されているかどうか確認してみてください。
まとめ
今回は、GAEの目玉であるデータストアをGroovyから利用するための基本について説明しました。もし、既にGAE for Javaで開発を行った経験がある人なら、ほとんどJavaのコーディングと変わらないことに気がついたはずです。Groovyは、まさに「Javaを手軽にかけるようにした」ものであり、JavaでGAEを利用できる人なら、Groovyでも利用できるようになることがよく分かるでしょう。
GroovyによるGAE利用は、文字化けなどの問題も残されていますが、考えてみれば「すべてをGroovyで記述する」必要はないのです。今回も、SampleData
クラスについてはJavaで記述しました。必要に応じてJavaとGroovyをうまく使い分けることで、多くの問題は回避できます。Groovyを「Javaをより使いやすくするための道具」と考えれば、十分に役立つはずです。