コントローラーとビュー[Java編] (1/4)
作成:2013-02-17 09:47
更新:2013-02-17 09:47
更新:2013-02-17 09:47
■Controllerクラスの作成
ここまでScalaを使ってMVCの基本プログラムを作成して来ました。が、Javaプログラマであれば、「やっぱりJavaで書きたい!」と思う人のほうが多いことでしょう。そこで、Javaでコントローラーを作成するための基本について説明をしていきましょう。
Javaでコントローラーを作成する場合、その基本的な書き方を整理すると下のリスト欄のようになります。以下に簡単にポイントを整理しておきましょう。
1. controllersパッケージに配置
コントローラーは、「app」フォルダ内の「controllers」フォルダの中にソースコードファイルを配置します。これは、「controllers」パッケージとしてビルド時に認識されます。従って、必ず「package controllers;」を指定しておく必要があります。
2. ライブラリはplay.apiではない
コントローラーで必要となるクラス類は、だいたい以下のようなパッケージにまとめられています。だいたいこれらのパッケージをimportしておけば、ひと通りのクラスが利用できるようになるでしょう。
playパッケージ――アプリケーション本体に関するクラスがまとめられています。
play.mvcパッケージ――MVC関連のクラスがまとめられています。
views.html――ビューテンプレートに関連するクラスがまとめられています。
パッケージ名を見ればわかるように、「play.api」パッケージではありません。Scalaのクラス類はplay.apiパッケージにまとめてありましたが、Javaのクラスはパッケージが異なっています。注意しましょう。
3. クラスはControllerを継承する
肝心のコントローラークラスの定義ですが、これはplay.mvcパッケージに用意されている「Controller」というクラスを継承して作ります。この中に、アクションに応じて呼び出されるアクションメソッドを用意します。
4. アクションメソッドはResultを返す
コントローラークラスには、アクションメソッドを用意します。アクションメソッドは、文字通り、アクションが実行された時に呼び出されるメソッドですね。このメソッドでは、play.mvcパッケージにある「Result」というクラスを返値に指定する必要があります。
――ざっと、上記の点に注意してコントローラーを書けば、割と簡単にJavaでコントローラーを用意することができます。
Javaでコントローラーを作成する場合、その基本的な書き方を整理すると下のリスト欄のようになります。以下に簡単にポイントを整理しておきましょう。
1. controllersパッケージに配置
コントローラーは、「app」フォルダ内の「controllers」フォルダの中にソースコードファイルを配置します。これは、「controllers」パッケージとしてビルド時に認識されます。従って、必ず「package controllers;」を指定しておく必要があります。
2. ライブラリはplay.apiではない
コントローラーで必要となるクラス類は、だいたい以下のようなパッケージにまとめられています。だいたいこれらのパッケージをimportしておけば、ひと通りのクラスが利用できるようになるでしょう。
playパッケージ――アプリケーション本体に関するクラスがまとめられています。
play.mvcパッケージ――MVC関連のクラスがまとめられています。
views.html――ビューテンプレートに関連するクラスがまとめられています。
パッケージ名を見ればわかるように、「play.api」パッケージではありません。Scalaのクラス類はplay.apiパッケージにまとめてありましたが、Javaのクラスはパッケージが異なっています。注意しましょう。
3. クラスはControllerを継承する
肝心のコントローラークラスの定義ですが、これはplay.mvcパッケージに用意されている「Controller」というクラスを継承して作ります。この中に、アクションに応じて呼び出されるアクションメソッドを用意します。
4. アクションメソッドはResultを返す
コントローラークラスには、アクションメソッドを用意します。アクションメソッドは、文字通り、アクションが実行された時に呼び出されるメソッドですね。このメソッドでは、play.mvcパッケージにある「Result」というクラスを返値に指定する必要があります。
――ざっと、上記の点に注意してコントローラーを書けば、割と簡単にJavaでコントローラーを用意することができます。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※Javaによるコントローラークラスの基本形 package controllers; import play.*; import play.mvc.*; import views.html.*; public class クラス名 extends Controller { public static Result アクションメソッド() { ……処理を記述…… return 《Result》; } }
※関連コンテンツ