【Java & Tomcat】ラジオボタンを使ってデータを取得する(サンプルプログラム付)

  • このエントリーをはてなブックマークに追加
  • Pocket

Webアプリケーションを作成するにあたり、ブラウザへの出力ばかりではなく、ラジオボタンを使ってユーザー側からの入力を取得する場合がある。ここではその方法について説明する。

ラジオボタンのデータ取得の仕方

ラジオボタンとは、Webページで選択をするための丸いボタンのことである。自由に文字を入力できるテキストボックスと違い、このボタンの場合、いくつかあるボタンの中からひとつしか選ぶことができない。

サーブレットが選択されたラジオボタンのデータを取得するために、クライアントからのリクエスト情報が入っているHttpServletRequestオブジェクトに対してgetParameterメソッドを使う。ラジオボタンのデータはリクエスト情報の中にパラメータとして含まれている。このメソッドにラジオボタンのパラメータの名前(name)を引数として与えることによって選択されたラジオボタンと紐付けされたデータ(value)を取得することができる。

書き方の基本は簡単だ。

HttpServletRequestオブジェクト. getParameter (ラジオボタンの名前);

実際のHTML画面でラジオボタンを選択するコードはこうなる。

<input type="radio" name="radiobutton" value="apple"> りんご

サーブレット側のコードはこうなる。

String selectedFruit = request.getParameter("radiobutton");

ラジオボタンのデータを取得するサンプルプログラム

このサンプルプログラムラムは、3つの果物の中から好きな果物を選んでもらい、それを表示するというものだ。そのデータを取得したサーブレットは、選択された果物と紐付けられていた値をそのままレスポンスの画面に表示する。

サーブレットの配置とプログラムのコードは次のようになっている。

最初にHTMLで書かれたフォームデータ入力画面のコードを示す。

次に、HTML画面からリクエストを受け取るサーブレットのコードを示す。

実行結果

ブラウザにURL:http://localhost:8080/Servlet/ radiobuttons.html を入力し、Enterを押す。

表示されるブラウザ画面:

ラジオボタンの「りんご」を選んで、選択実行ボタンを押す。

表示されるブラウザ画面:

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] アノテーションの宣言をする。
  • [2] HttpServletを継承して、ServletRadioButtonクラスを定義する。
  • [3] doGet()メソッドをオーバーライドして定義する。
  • [4] Content Typeを設定する。
  • [5] 選択されたラジオボタンのデータを取得し、変数selectedFruitに代入する。
  • [6] HTMLを出力するためのPrintWriterオブジェクトを取得する。
  • [7]-[9] PrintWriterオブジェクトに「あなたが好きな果物は(取得した値:selectedFruit )です。」と表示するHTMLコードを出力する。

まとめ

サンプルプログラムをご覧頂いてもわかる通り、ラジオボタンを使って入力されたデータを元に様々な処理を行う事ができる。項目の名称を変更したり、選択肢を増やしてみたりなど、自分なりに色々と変更してみよう。

 

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できる。

短期間でエンジニアになる方法

・「まったくの初心者だけどエンジニアになりたい!」

・「プログラマーとして転職をしたい!」

という方はリナックスアカデミーの資料を見てみてください。短期間で未経験からエンジニアになることができるスクールとして15年間選ばれ続けてきた理由やノウハウが載った資料です。

エンジニアの入り口に立つために必要な勉強技術の最新動向本当に使えるIT資格学習に役立つ国からの奨励金などの情報が詰まっています。

無料で2,3日中にお手元にお届けします。


資料を見てみる

SNSでもご購読できます。

コメントを残す

*

ゼロからエンジニアを目指す方へ
短期間でエンジニアになる方法

必要な勉強や技術の最新動向、本当に使えるIT資格、学習に役立つ国からの奨励金などの情報を無料でお届け

資料を見てみる