はじめてのSpring Boot を頂いたので読んだ #hajiboot

ということで、本を頂いていたので読みました。 [twitter:@making]さんありがとうございます。*1

さて、Spring自体はJava EEに対するアンチテーゼとして生まれ、Java EE重すぎだよ!だから軽量なものを作るよ!ぐらいな感じで始まったはずがいつの間にかJava EEよりもよっぽど重量級となり、山のようなサブプロジェクトを抱え、何から手を付ければよいかわからないという問題点がありました。*2

その中でSpring Bootは数あるSpringの依存ライブラリのうち、よく使うものをベーシックパッケージとしてまとめ、それ以外のものをアドオンとしてこれまたいくつかのライブラリをまとめて提供してくれます。

そういった意味で、初心者には難しい、"数多くのSpringのライブラリのうち、何を使用すればよいのか"というのを解消してくれるツールとして非常にありがたいものです。

Java EE 7、いつまでも商用サポートが受けられないじゃないかー!とか、どうせ商用サポート受けられないなら更新の遅いJava EEよりも更新の早いSpringの方がいいやという人はこちらを選ぶ価値は十二分にあると思われます。

事実、Java EEよりはSpringの方がずいぶんと先を行っています。*3

さて、この本についてですが、本の内容についてはWeb開発でSpring Bootを利用するというものとしては申し分ないものです。
ある程度、今までのServletや、JSPを使ったJavaによるWeb開発を経験している必要はありますが、中級者の方がSpring Bootを利用してWeb開発を行うための取っ掛かりとしては十分な情報量だと考えられます。
Springを利用してみたいけれども、Springの取っ掛かりがよくわからないという人にとっても非常に良いのではないでしょうか。

難点を言えば、Spring Bootを組み込みAPサーバーを利用して単体起動させるところまでしか書かれておらず、すでにAPサーバーがある場合にwarファイルを作成して、既存インフラの代替として利用できることが書かれていないことでしょうか。ああ、勿体無い。
また、最終的にWebシステムに限定されてしまっており、バッチシステムとしても利用できる、Java SE環境でDIが使用したい場合にSpring Bootを利用してバッチ処理を記述できるというのが判りにくいというのは難しいなぁと思いました。

そうそう、Spring Boot、バッチ作るときにDIを使用するためのフレームワークとして使用するのは非常に良いと思いました。
Springだけで作ってるとSpring Contextは入れたけれどもXXXX入れるの忘れた!とかよくあるので。

ある程度まとまった形で問題なく動くものが最初から提供されているというのはほんとうに良いです。
ということで、Spring Bootを一度やってみましょう。

今であればこの本を買った上で、 #hajiboot を付けてTwitterでツイートしたり、githubに質問事項を書けば作者がサポートしてくれたりと間違いなくお買い得感溢れます。

ぜひ、ご購入を検討下さい。

また、ちょうど作者さんが関西でSpring Bootを利用したハンズオンを行ってくださるようです。
そちらについてもぜひご参加下さい。
http://kanjava.connpass.com/event/11579/

*1:もらってから読み始めるまでに2ヶ月ぐらいたってました・・・・・・

*2:要出典

*3:Springで先行実装されたものが一般化されJava EEに取り込まれることもあります