【Play Framework】Play Framework [1-0] ~ 入門編 / 事前知識 ~

Play Framework の特徴

[1] Java EEを使わない
 => JSP/Servletを使わない。Tomcat上に動かさずにすみ、サーバ(Jetty?)も内包されている

[2] MVCを採用
 => 別にどうってことはないが

[3] Java/Scalaで記述
 => どっちも選べるが、ViewはScalaのみで記述

[3] Ruby on Rails に影響しており、Rails ライクらしい。

主なフォルダ/ファイル構成

* 環境構築は以下の関連記事に記載しているが、その際のファイル/フォルダ構成を記載する
http://blogs.yahoo.co.jp/dk521123/36058991.html
[Javaプロジェクト]
 + .settingsフォルダ     ... 設定に関するファイルを格納
 + appフォルダ           ... アプリ本体(MVC etc)を格納する場所
   + controllersフォルダ ... 
   + viewsフォルダ       ... 
   ※ モデルに関するフォルダはデフォルトはないが、「models」を自分で作成しておくといい
      (関連記事の「Play Framework [3] ~ 入門編 / モデルの設定 ~」を参照)
 + confフォルダ               ... 設定ファイルを格納する場所
   + application.confファイル ... アプリの設定を保持するファイル(★重要★)
   + routesファイル ... どのアドレスにアクセスしたら、どれを表示するかといった情報を
                        格納したファイル(★重要★。下記の「ルーティング」を参照)
 + logsフォルダ ... アプリ実行時のログファイルの格納先
 + projectフォルダ ... プロジェクトをビルドするためのsbt(Simple Build Tool)
                       というビルドツールなどを格納
   + plugins.sbtファイル ... Play Framework内で使用するためのプラグイン群の追加のため
                             のsbtファイル(★重要★)
 + publicフォルダ ... アプリの静的ファイルを格納する場所
   + imagesフォルダ ... 画像ファイル
   + javascriptsフォルダ ... java scriptファイル
   + stylesheetsフォルダ ... CSSファイル
 + targetフォルダ ... Play Frameworkにより生成される中間ファイルやコンパイルファイルを格納する場所
 + testフォルダ ... テストコード
 + .gitignoreファイル ... Gitで利用されるファイル
 + build.sbtファイル ... ビルド時の機能を格納するファイル(★重要★)

routesファイル

 * どのアドレスにアクセスしたら、どれを表示するかといった情報(ルーティング)
   を格納したファイル
構文
GET アドレス 呼び出すメソッド
例:ルートにアクセスした際に、Homeコントローラのindexに飛ぶようにする設定
GET     /                           controllers.HomeController.index


関連記事

Play Framework の環境構築時のトラブルシューティング

http://blogs.yahoo.co.jp/dk521123/36068396.html

Play Framework [1-1] ~ 入門編 / 環境構築 ~

http://blogs.yahoo.co.jp/dk521123/36058991.html

Play Framework [1-2] ~入門編 / Hello World

http://blogs.yahoo.co.jp/dk521123/36077858.html

Play Framework [1-3] ~ 入門編 / モデルの設定 ~

http://blogs.yahoo.co.jp/dk521123/36077949.html

Play Framework [1-4] ~ 入門編 / Hello World with DB ~

http://blogs.yahoo.co.jp/dk521123/36084590.html

Play Framework [3-1] ~ 応用編 / DBを動的に切替える ~

http://blogs.yahoo.co.jp/dk521123/36088178.html