プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

POSTメソッドでJSPを使ってフォームデータを読み取る方法

以下は、WebブラウザからGETまたはPOSTメソッドで送信された入力データを処理するためのmain.jspのJSPプログラムです。

main.jsp のコード

<html>
   <head>
      <title>Using GET and POST Method to Read Form Data</title>
   </head>
   <body>
      <center>
         <h1>Using POST Method to Read Form Data</h1>
         <ul>
            <li><p><b>First Name:</b>
               <%= request.getParameter("first_name")%>
               </p></li>
            <li><p><b>Last Name:</b>
               <%= request.getParameter("last_name")%>
               </p></li>
         </ul>
      </center>
   </body>
</html>

実は、このJSPコードには特別な変更は必要ありません。GETからPOSTへの切り替えは、単にパラメータの受け渡し方法が変わるだけであり、JSPプログラム側ではrequest.getParameter()メソッドがどちらのメソッドに対しても同じように機能するためです。また、この例ではバイナリデータを扱わないため、コードをそのまま流用できます。

なお、バイナリデータストリームを読み取る必要があるファイルアップロードなどの処理については、別の章で詳しく解説します。

Hello.htm フォームの作成

次に、データを送信する側のHTMLフォームを作成します。以下はHello.htmファイルの内容です。

<html>
   <body>
      <form action = "main.jsp" method = "POST">
         First Name: <input type = "text" name = "first_name">
         <br />
         Last Name: <input type = "text" name = "last_name" />
         <input type = "submit" value = "Submit" />
      </form>
   </body>
</html>

ここで注目すべきは、formタグのmethod属性にPOSTが指定されている点です。これにより、フォームの内容はURLではなくHTTPリクエストのボディとして送信されます。

動作確認の手順

main.jspHello.htmを、Tomcatのインストールディレクトリ配下にある<Tomcatインストールディレクトリ>/webapps/ROOTディレクトリに配置します。

その後、ブラウザでhttps://localhost:8080/Hello.htmにアクセスすると、入力フォームが表示されます。

名(First Name)と姓(Last Name)を入力し、送信ボタンをクリックしてみてください。Tomcatが稼働しているローカルマシン上で結果を確認できます。

入力された内容に基づいて、上記の例と同様の結果が出力されます。

ポイント:GETとPOSTの違い

GETメソッドではパラメータがURLの末尾に付加されて送信されるため、送信内容がアドレスバーに表示され、長さにも制限があります。一方、POSTメソッドはデータをHTTPリクエストのボディに含めて送信するため、パスワードなどの機密情報や大量のデータを扱う場合に適しています。JSP側ではどちらのメソッドでもrequest.getParameter()を使えば同じ記述で値を取得できるのが便利な点です。

  1. JavaScriptでCSVファイルからデータを読み込む方法【Papa Parse活用ガイド】

    JavaScriptでCSVを読み込むなら「Papa Parse」が便利JavaScriptを使ってCSVファイルのデータを読み取りたい場合、オープンソースのCSVパーサーであるPapa Parse(Papa Parser)を利用するのが最も手軽で確実な方法です。Papa Parseには、以下のような魅力的な特徴があります。完全なオープンソースとして無償で提供されているマルチスレッド対応のCSVパーサーにより、数百万件規模の大量データも高速に解析可能Chrome、Firefox、Edgeなど、主要なWebブラウザを幅広くサポートコメントアウトされた行や文字を簡単にスキップできるオプションを搭載

  2. JavaScriptでJSON配列からデータを読み取る方法をサンプルコード付きで解説

    Web開発では、APIから取得したJSONデータを処理する場面が非常によくあります。本記事では、JavaScriptを使ってJSON配列からデータを読み取り、画面に表示する方法を、実際に動作するサンプルコードとともにわかりやすく解説します。 JSON配列からデータを読み取る基本の流れ JSON形式の文字列をJavaScriptで扱うには、まずJSON.parse()メソッドで文字列をJavaScriptのオブジェクト(配列)に変換します。変換後は、forEach()メソッドなどを活用して、配列の各要素に格納された値へ簡単にアクセスできます。 サンプルコード <!DOCTYPE htm