libro
www.tuyano.com
初心者のためのSpring Bootプログラミング入門

Spring Bootで「3分でアプリ開発」してみる (4/5)

作成:2014-06-07 09:34
更新:2014-06-07 09:34

■Groovyのコントローラークラスの仕組み

今回作成したapp.groovyでは、MyBootAppというObject継承のシンプルなクラスがあるだけでした。なぜ、これだけでWebアプリになったのか。それは、用意されているアノテーションに秘密があります。

●@RestController
これは、クラスに付けられるアノテーションで、このクラスが「RestController」というものであることを示すものです。RestControllerは、Spring MVCにあるコントローラー用の機能で、その名前から想像がつくようにRESTfulなアプリケーションを作成する際に用いるコントローラーを示すものです。

この@RestControllerをつけると、このクラスがHTTPリクエストを受けて、ボディをもったレスポンスを返す機能(要するにコントローラー)を持つものであることを認識します。要するに「@RestControllerをつければ、そのクラスはREST用のコントローラーとして自動的に認識される」というわけです。

RESTfulなサービスの構築についてはまたいろいろ考えないといけないので、ここでは単純に「指定アドレスにアクセスすれば何らかの結果が返る」という処理を行うコントローラー、という程度に考えておきましょう。

●@RequestMapping("/")
これは、メソッドに付けられるもので、そのメソッドを特定のURLにマッピングするためのアノテーションです。例えば、ここでは引数に"/"と指定していますね。これにより、そのドメインのルート(/)にアクセスしたら、このメソッドが呼び出されるようになります。

このアノテーションは、クラス内にいくつでもつけることができます。ですから、アクセスするアドレスごとに出力内容を返すメソッドを用意しておき、それぞれに@RequestMappingでアドレスを設定すれば、それだけで簡単なWebアプリは作れてしまう、というわけです。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

@RestController
class MyBootApp {
    
    @RequestMapping("/")
    def top() {
        "Hello Spring Boot!!"
    }

}
※関連コンテンツ

「初心者のためのSpring Bootプログラミング入門」に戻る