サーブレット/JSPを基にする重厚長大なJavaのWeb開発のイメージを変える軽量フレームワーク「Play」について解説し、Webアプリの作り方を紹介する入門連載。今回は、PlayにおけるMVCパターンのコントローラについて、URIやHTTPメソッドなどの扱い方を含めて解説します。
今までの連載では、Play frameworkにおけるMVCパターンのうち「M」(Model)と「V」(View)について説明してきました。今回は、残りの「C」(Controller)について以下の内容で説明します。
前回の記事「Java開発者がScalaでPlay frameworkのビューを作るには」では、Webブラウザからリクエストを受けWebページを生成するまでのPlay frameworkにおけるMVCパターンの概要を簡単に説明しました。前回のおさらいをかねて、Webページを生成する流れを簡単に見てみましょう。
基本的にはWebブラウザからリクエストを受けてWebページを作成する流れは下記になります。
場合によってはControllerから直接Viewに行く場合(3をスキップする場合)やViewの描画中にModelからのデータをやりとりをすること(View(4)からModel(3)を呼び出してデータを取得し描画に戻る場合など)もあります。
今回は、Controllerの部分である1と2の部分について説明します。最初に、どのようにコーディングされるのか一通り見た後に詳細を学んだ方が理解しやすいと思うので、実際のサンプルを見ながらControllerについて学んでいきましょう。
今回はコントローラの仕組みを理解するために簡単な占いアプリを作ります。
名前を入力して名前占いを行います。さらに、その結果には恋愛運と金運についてのリンクボタンもついています。それらを押すと、それぞれの結果を表示します。
ただし、今回はあくまでもサンプルアプリなので、実際の占いのロジックは実装しせず、固定の結果しか表示しません。せっかくですので、この記事を読んだ後に独自の占いロジックを追加して、ちょっとしたイベントなどで活躍するWebアプリを作るのも面白いかもしれません。
では、サンプルアプリを作ってみましょう。下記はコマンドプロンプトからのアプリ作成手順です。
これでアプリが作成されるので、下記手順でアプリを起動してみましょう。
起動後、確認のためにWebブラウザを開き「http://localhost:9000/」にアクセスしてください。下記の画面が表示されていれば問題なく起動しています。
Play frameworkのバージョンが2.1にアップしてからEclipse用のプロジェクトファイル作成のコマンドが変わりました。現在は下記コマンドでプロジェクトファイルが作成されます。
play eclipse
もしくは、すでにPlay freameworkを起動中の場合は下記コマンドを使います。
eclipse
また、Eclipseで作業する際はEclipse外でコンパイルされたファイルがうまく読み込めずエラーが出ることがあります。その際は前回の記事の「起こりやすい3つの問題と解消方法」の【1】を参考に修正してください。
Copyright © ITmedia, Inc. All Rights Reserved.