Java技術情報


/*
 * レベル2 getParameter
 */

import java.io.*;
import java.util.*;
import javax.servlet.http.*;
import javax.servlet.*;


public class Level020 extends HttpServlet {

    /*** init サービス ***/
    public void init(ServletConfig conf) throws ServletException
    {
		super.init(conf);
    }


    /*** doGet サービス ***/
    public void doGet (HttpServletRequest req, HttpServletResponse res)
	    throws ServletException, IOException
    {

	// 変数宣言
	String s_param = "";

	    // req.getParameter で 引数arg_cd を取得する。
		// 引数arg_cdが無ければ、Nullが入る。
	    s_param = req.getParameter("arg_cd");

		if(s_param != null){
	    // 引数が全角文字で来た場合のフィルタリング
	    // "8859_1" は、 ISO8859-1(ISO Latin-1)エンコード形式という意味で、
	    // resinがリクエストを
	    // 受け付けて、このサーブレットに投げ込んだときのエンコード形態。
	    // これを、クライアント側に表示されていた htmlのエンコードに戻して
	    // やる。 今回は "JISAutoDetect"(日本語自動選択) を使用。
	    //s_param = new String(s_param.getBytes("8859_1"),"JISAutoDetect");
	    s_param = new String(s_param.getBytes(),"JISAutoDetect");
		}

	res.setContentType("text/html; charset=MS932");


	PrintWriter pw = res.getWriter();

	pw.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">");
	pw.println();
	pw.println("<head>");
	pw.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">");
	pw.println("<!-- The Servlet expression tags interpolate script variables into the HTML -->");
	pw.println("<title>ハロー!</title>");
	pw.println("</head>");
	pw.println("<body bgcolor=white>");
	pw.println();

	pw.println("<h1>ハロー!</h1>");

	// ここにさっきの s_param をいれれば、引数がhtml上に表示される。
	pw.println("引数 = " + s_param + " <BR>");


	pw.println();
	pw.println("</body>");

	pw.flush();
	pw.close();

    }


    /*** doPost サービス ***/
    public void doPost (HttpServletRequest req, HttpServletResponse res)
	    throws ServletException, IOException
    {
	doGet(req,res);
    }

}


つまり req.getParameter() ってことです。


ブラウザはIE6.0sp2以上、解像度1024*768以上を推奨します。
戻る
gospel4 トップへ