package jp.co.wownet.education.servlet; import java.io.*; import java.util.Vector; //サーブレット import javax.servlet.*; import javax.servlet.http.*; /** リクエストのパラメーターを取得するサーブレットです。 簡易掲示板です。 @author Fumitaka Makino */ public class RequestParameter02 extends HttpServlet { /** 掲示板のメッセージの保持を行うフィールド */ private Vector msgs = new Vector(); /** HTTP命令のGETに対応するメソッドで、スーパークラスのdoGetを オーバーライドしています。WEBサーバーに対してGETによって要 求があったときにdoGetが呼ばれます。 @param request HTTPリクエストされたときの情報等がカプセル化されたオブジェクト @param response 一般的にブラウザ(リクエスト元)に対して応答する情報をカプセル化したオブジェクト @exception ServletException サーブレット内部で発生した問題全般 @exception IOException Stream系の問題が発生したときなど */ public void doGet( HttpServletRequest request , HttpServletResponse response ) throws IOException,ServletException{ //レスポンスからWriterの取得 response.setContentType("text/html; charset=Shift_JIS"); PrintWriter out = response.getWriter(); //HTMLを書き出す out.println(""); out.println(""); out.println("RequestParameterの実験"); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println("

"); out.println("名前 "); out.println(""); out.println("
"); out.println("メッセージ "); out.println(""); out.println("
"); out.println(""); out.println(""); out.println("

"); out.println("
"); out.println("
"); //一時格納変数 String[] tmpMsg = null; for( int i=msgs.size()-1;-1" + tmpMsg[0] + "
"); out.println(tmpMsg[1] + "

"); } out.println(""); out.println(""); //Writerのクローズ out.close(); } /** HTTP命令のPOSTに対応するメソッドで、スーパークラスのdoGetを オーバーライドしています。WEBサーバーに対してGETによって要 求があったときにdoGetが呼ばれます。 @param request HTTPリクエストされたときの情報等がカプセル化されたオブジェクト @param response 一般的にブラウザ(リクエスト元)に対して応答する情報をカプセル化したオブジェクト @exception ServletException サーブレット内部で発生した問題全般 @exception IOException Stream系の問題が発生したときなど */ public void doPost( HttpServletRequest request , HttpServletResponse response ) throws IOException,ServletException{ //POSTされてきたパラメータの取得 String param1 = request.getParameter("test1"); String param2 = request.getParameter("test2"); //入力されているか判定 if( param1!=null && param2!=null ){ //フィールドのVectorにメッセージを追加 msgs.add( new String[]{ param1 , param2 } ); } //自分に転送 response.sendRedirect( request.getContextPath()+"/servlet/"+this.getClass().getName() ); } }