前回のservletをさらに改造して、すでに入力してあるデータを削除できるようにしました。前回は番号をリンクにしていましたが、今回はそれをやめ、番号の横にそのメッセージに対する操作のリンクを表示するようにしました。操作はreplyとdeleteで、それぞれそのメッセージへの応答の入力、そのメッセージの削除を行います。replyの動作は、前回と同じです。deleteでそのメッセージを削除すると、その後のメッセージを詰めて表示します。メッセージの番号は付け変わりません。削除したメッセージの番号は欠番になります。deleteのためのメッセージ番号は、QueryStringでURLに埋め込んであります。今回は操作が2種類あるので、URLにコマンドも埋め込んでいます。doGet()メソッドでコマンドを取り出し、コマンドが指定されていればメッセージ番号を取り出し、指定されたメッセージに対して操作を行っています。前回からあちこち変更したので、ソースコードを全部示します。}}本日の教訓"reply".equals(cmd)のように記述すると、cmd.equals("reply")のように記述するのに比べて、cmdがnullかどうか判断しなくてよいことに気づきました。定数でもオブジェクトであれば、そのメソッドが使えるのは便利です(裏側では、オブジェクトを生成するコストがかかっているのでしょうけれど)。Servlet日記(1999/04/25)。