Groovy
spring
spring-boot

Spring Boot CLI と Groovy 7行で Hello, world! してみる

More than 1 year has passed since last update.

Spring Boot CLI と Groovy 7行で Hello, world! してみたのでメモっとく。

Spring Boot で Hello, world! するのを Java と Kotlin と Groovy で比較するよりマイクロにできることがわかったのでついでに書いておく。

なお本稿は macOS 環境を前提にしている。


Spring Boot CLI をインストールする

Homebrew で Spring Boot CLI をインストールする。

$ brew tap pivotal/tap

$ brew install springboot

ターミナルで下記のコマンドを実行してみるとバージョンが表示される。なお、Rails 環境がローカルにあると Rails が使用している spring が実行されてしまう可能性があるので PATH 環境変数を調整しよう。

$ spring --version

Spring CLI v1.5.4.RELEASE


Hello プロジェクトを作成する

Hello プロジェクトのディレクトリを作成して移動する。

$ mkdir hello

$ cd hello

そのディレクトリに HelloApplication.groovy ファイルを作成する。


HelloApplication.groovy

@RestController

class HelloApplication {
@RequestMapping("/")
def hello() {
"Hello, world!"
}
}


Hello プロジェクトを実行する

Hello プロジェクトのディレクトリに移動して Spring Boot CLI の run サブコマンドを HelloApplication.groovy に対して実行すると Web サーバーが起動する。

$ spring run HelloApplication.groovy


GET リクエストを送信する

起動した Hello プロジェクトに GET リクエストを送信すると Hello, world! が返ってくる。

$ curl localhost:8080

Hello, world!


Groovy に限定されてしまうけどマイクロフレームワーク並のコードで Spring の機能が利用できるのは魅力的。動作の詳細については時間があるときに記事にまとめたいな。プロダクション用にパッケージングすることもできるようなのであなどれない機能だね。


参考文献

Spring Boot in Action

https://docs.spring.io/spring-boot/docs/current/reference/html/cli-using-the-cli.html