カテゴリ: Play Framework 更新日: 2026/01/09

Play Frameworkでクエリパラメータをコントローラで処理する方法を完全解説|Java初心者向け入門

クエリパラメータをコントローラで処理する方法
クエリパラメータをコントローラで処理する方法

先生と生徒の会話形式で理解しよう

生徒

「Play Frameworkで検索画面を作ろうとしているんですが、URLの後ろに付くクエリパラメータってどうやって受け取るんですか?」

先生

「Play Frameworkでは、Controllerでクエリパラメータを簡単に取得できます。Java初心者でも理解しやすい書き方ですよ。」

生徒

「Servletみたいにrequestから取り出す必要がありますか?」

先生

「基本的な考え方は似ていますが、Play Frameworkならもっとシンプルです。実際の例を見ながら確認していきましょう。」

1. クエリパラメータとは何か

1. クエリパラメータとは何か
1. クエリパラメータとは何か

クエリパラメータとは、URLの末尾に付与される追加情報のことです。 一般的に「?キー=値」の形式で表され、複数ある場合は「&」でつなげます。 Webアプリケーションでは、検索条件や並び替え、ページ番号の指定など、 さまざまな場面でクエリパラメータが使われています。

Play Frameworkでも、このクエリパラメータは非常に重要な存在です。 Javaで書かれたControllerクラスからクエリパラメータを受け取り、 その内容に応じて処理を切り替えることで、動的なWebアプリケーションを実現できます。

初心者の方は、まず「URLに含まれる情報をControllerで受け取れる」という点を しっかり理解することが大切です。

2. Play Frameworkでクエリパラメータを受け取る基本

2. Play Frameworkでクエリパラメータを受け取る基本
2. Play Frameworkでクエリパラメータを受け取る基本

Play Frameworkでは、Controllerのアクションメソッド内で リクエストオブジェクトを使ってクエリパラメータを取得します。 Servletのように複雑な処理を書く必要はなく、 必要なときだけ取り出せる点が特徴です。

まずは、最も基本的なクエリパラメータの取得方法を見てみましょう。


package controllers;

import play.mvc.Controller;
import play.mvc.Result;
import play.mvc.Http;

public class SearchController extends Controller {

    public Result search(Http.Request request) {
        String keyword = request.getQueryString("keyword");
        return ok("検索キーワード:" + keyword);
    }
}

この例では、keywordという名前のクエリパラメータを取得しています。 URLに「?keyword=java」のような形でアクセスすると、 Controllerでその値を受け取ってレスポンスに表示できます。

Play FrameworkのControllerでは、 必要な情報だけをシンプルに扱えるため、 Java初心者でもコードを読みやすいのが特徴です。

3. クエリパラメータが存在しない場合の考え方

3. クエリパラメータが存在しない場合の考え方
3. クエリパラメータが存在しない場合の考え方

実際のWebアプリケーションでは、 クエリパラメータが必ず送られてくるとは限りません。 そのため、値が存在しない場合を考慮した処理が重要になります。

Play Frameworkでは、クエリパラメータが存在しない場合、 getQueryStringの戻り値はnullになります。 そのため、条件分岐を使って安全に処理することができます。


public Result search(Http.Request request) {
    String keyword = request.getQueryString("keyword");
    if (keyword == null || keyword.isEmpty()) {
        return ok("検索キーワードが指定されていません");
    }
    return ok("検索キーワード:" + keyword);
}

このように書いておくことで、 想定外のアクセスがあってもアプリケーションが壊れにくくなります。 初心者のうちは、必ずnullチェックを意識する習慣を付けましょう。

4. 数値のクエリパラメータを扱う方法

4. 数値のクエリパラメータを扱う方法
4. 数値のクエリパラメータを扱う方法

クエリパラメータには、文字列だけでなく数値が使われることも多くあります。 例えば、ページ番号や件数指定などが代表的な例です。 Play Frameworkでは、取得した文字列を数値に変換して処理します。


public Result page(Http.Request request) {
    String pageParam = request.getQueryString("page");
    int page = 1;
    if (pageParam != null) {
        page = Integer.parseInt(pageParam);
    }
    return ok("現在のページ:" + page);
}

この例では、pageというクエリパラメータを数値として扱っています。 初期値を用意しておくことで、 パラメータが指定されていない場合でも安定した動作が可能です。

数値変換はエラーが起きやすい部分でもあるため、 まずは基本的な形を理解することを優先しましょう。

5. クエリパラメータ処理で意識したいポイント

5. クエリパラメータ処理で意識したいポイント
5. クエリパラメータ処理で意識したいポイント

Play Frameworkでクエリパラメータを扱うときは、 Controllerの役割を意識することが大切です。 Controllerはリクエストとレスポンスをつなぐ場所であり、 複雑な処理を詰め込みすぎない方が保守しやすくなります。

クエリパラメータの取得はシンプルですが、 nullチェックや初期値の設定を忘れると、 思わぬエラーにつながることがあります。 初心者のうちは、少し丁寧すぎるくらいがちょうどよいです。

Play Frameworkのコントローラ入門として、 クエリパラメータを正しく扱えるようになると、 検索機能や一覧表示など、実用的なWebアプリケーションに一歩近づきます。 基本を繰り返し確認しながら、理解を深めていきましょう。

カテゴリの一覧へ
新着記事
New1
Jakarta EE
Jakarta EEとクラウドネイティブ開発の相性とは?初心者向けにわかりやすく解説
New2
Jakarta EE
JakartaEE JSPのリクエスト属性とスコープの基本を徹底解説!初心者向け入門ガイド
New3
Play Framework
Play Frameworkのビューテストを徹底解説!Twirlテンプレートの品質を高める方法
New4
Jakarta EE
JakartaEE フィルタで認証と認可を実装する方法を初心者向けに解説!サーブレットのセキュリティ入門
人気記事
No.1
Java&Spring記事人気No1
Jakarta EE
Jakarta EEとSpringの比較|どちらを選ぶべきか?初心者向けに徹底解説!
No.2
Java&Spring記事人気No2
Play Framework
Play Frameworkのビューを共通化!テンプレート間のインクルード方法を徹底解説
No.3
Java&Spring記事人気No3
Play Framework
Play Frameworkプロジェクト作成直後にやるべき初期設定ガイド!初心者でも安心
No.4
Java&Spring記事人気No4
Play Framework
Play FrameworkでCSSやJavaScriptを読み込む方法を徹底解説!静的リソースの組み込みガイド
No.5
Java&Spring記事人気No5
Play Framework
Play Frameworkで多言語対応(i18n)を徹底解説!Twirlテンプレートでの使い方
No.6
Java&Spring記事人気No6
Jakarta EE
Jakarta サーブレットのHttpServletRequestを徹底解説!初心者でもわかる基本操作と使い方
No.7
Java&Spring記事人気No7
Jakarta EE
Jakarta EEとJava EEアプリの互換性を完全解説!移行で困らないための基礎知識
No.8
Java&Spring記事人気No8
Jakarta EE
Jakarta EEの標準仕様とAPI一覧を完全解説!初心者でもわかるエンタープライズJavaの基本