astamuse Lab

astamuse Labとは、アスタミューゼのエンジニアとデザイナーのブログです。アスタミューゼの事業・サービスを支えている知識と舞台裏の今を発信しています。

Play Framework 2.5を使ってみる

アスタミューゼ 開発部のYanagita@Scala歴1年です。

弊社が運用する転職サイトのアプリケーション開発を担当しています。 ちなみに、弊社が運営している転職サイト数は300サイトを超えていて、 国内トップクラスになります。

現在は転職サイトのリプレースを行っており、 社内で使用するバックエンドのシステムをPlay Frameworkで開発しています。 今回はPlay Frameworkの最新版を使って、環境構築からWebアプリの動作までさせてみたいと思います。

 目次

  • 事前準備
  • Playの実行環境を構築
  • Playプロジェクトの作成、アプリケーションを起動
  • 自作のWebページを表示

事前準備

まずは環境を整えます。

  • JDK : 1.8以降
  • Scala : 2.11.8

Playの実行環境を構築

1. 以下のリンク先からパッケージをダウンロードし、展開します。   https://www.playframework.com/download

2. 1で展開したディレクトリ配下のbinディレクトリを環境パスに追加します。

3. コマンドラインで以下のコマンドを実行し、環境が正常に構築されていることを確認します。

$ activator ui

※ 記載のコマンドは全てUnix向けになっています。Windowsユーザはコマンドプロンプトに読み替えてください。

上記コマンド実行後、環境が正常に構築されていれば以下のページが表示されます。
※ 初回起動はライブラリの読み込みを行うので少々時間がかかります。 f:id:astamuse:20160620020308p:plain

Playプロジェクトを作成し、アプリケーションを起動

1. activatorコマンドでプロジェクトを作成します。

$ activator new sample-app play-scala

play-scala部分をplay-javaに変更するとjava向けのプロジェクトが作成されます。 弊社で運営している転職サイトはScalaを使用していますのでScala向けで進めます。

2. Playアプリケーションを起動します。 1で作成したプロジェクトのルートディレクトリに移動し、以下のコマンドを実行します。

$ activator run

以下のメッセージの出力を待ちます。

[info] p.c.s.NettyServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

上記のメッセージが表示後、「http://localhost:9000/」にアクセスすると以下のページが表示されます。

f:id:astamuse:20160620231728p:plain

アプリケーションの終了は「Ctrl + C」で終了します。

自作のWebページを表示

1. Controllerファイルを作成します。
Controllerはリクエストデータの編集や登録など、主にサーバサイドの処理を記載する箇所になります。 今回は下記のパスにコードをコピペしてControllerファイルを作成してください。

/sample-app/app/controllers/SampleController.scala

package controllers
  
import javax.inject._
import play.api._
import play.api.mvc._  
  
@Singleton
class SampleController @Inject() extends Controller {
  def sample = Action {
    Ok("Play Framework 2.5 サンプルページ")
  }
}

2. 作成したControllerを登録する。 Play Frameworkでは、リクエストとControllerのひも付けをroutesファイルで管理しています。 今回作成したControllerをroutesに下記の通り追加します。

/sample-app/conf/routes

GET   /sample                       controller.SampleController.sample

3. Playアプリケーションを起動します。 プロジェクトのルートディレクトリに移動し、以下のコマンドを実行します。

$ activator ~run runオプションに"~“を付けて起動することで、ファイル更新時に自動的にコンパイル、デプロイが行われます。 起動が確認できたら「http://localhost:9000/sample」にアクセスし「Play Framework 2.5 サンプルページ」と表示されればOKです。

最後に

いかがだったでしょう?
だいぶ入り口の部分になるので物足りない感じかと思いますが入り口なのでこれくらいで、 次回はGet/Postによるリクエストパラメータの取得と入力チェックあたりを執筆させて頂きます。

アスタミューゼでは現在、エンジニア・デザイナーを募集中です。 興味のある方はぜひ 採用サイト からご応募ください。

おまけ

今週のランチ情報

刺身BAR 河岸頭
まぐろ尽くし丼 f:id:astamuse:20160621132801j:plain

会社からの道のり Google マップ

東銀座は築地が近いこともあり、海鮮丼のおいしいお店が多いです。

Copyright © astamuse company, ltd. all rights reserved.