#jsugで初心者のSpring勉強法について語られているので、@makingのオススメを書いておきます。
結論から言うと、以下の3冊(3.はSpring Data JPAを使う人のみ)。
「お前の本ばっかりじゃないかよ💢」、と思うかもしれませんが、オススメできる本がなかったから書いたんですw 実は3冊平行で書いていた時期もあるので、ある程度言いたいことを書き分けています。
はじめてのSpring Boot [改訂版]
まずはこれ。動かしながら一貫したアプケーションを作りながら学ぶことを意識して書きました。 動くものがあるのは勉強するモチベーションが上がるので、とにかくここから始めるのが良いです。 分厚いと途中で飽きてしまうので、薄く最短距離で必要最低限度のことを学べるようにしています。
改訂版からはCloud Foundryにデプロイして運用する方法も書いているのでこのまま本番にも行けます。 初版を持っている方でも、最新情報に追従していない方は、オススメの設定方法やプロジェクト作成方法が変わっているので買い直すと良いです。
ただし、この本は動かすことを重視しているので、Spring自体の説明はほとんどありませんし、Spring Bootが裏で何をやっているかもほとんど触れられていません。 それに関しては次の「Spring徹底入門」に譲りました。
Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発
Spring Bootに限らず、Springに関して徹底的に書きました。初めから全部読む必要はありません。 Spring Bootユーザーは、13章から「はじめてのSpring Boot」の復習がてら読み始めてください。 次に、14章のチュートリアルに行ってください。このチュートリアルはかなり凝っていて、開発に必要な項目をたくさん盛り込んでいます。
あとは2章のDIとその他14章で分からなかった内容を扱っている章を読み始めてください。2章の特にDIの箇所は必読中の必読です。
上級者はチュートリアルアプリをCloud Foundryに乗せる過程で、Cloud Friendlyなアプリケーションの作り方を見ていくのが昨今の開発スタイルを把握する上でオススメです。
パーフェクト Java EE
Java EE!?って感じですが、安心してくださいJPAの部分だけです。
データアクセスにJPA、というかSpring Data JPAを使っている人は、Springがいろいろ隠しているのでなんとなくでJPAを使ってしまっていると思いますが、エンティティのライフサイクルや関連(特に多を扱う際の更新系)のハマリポイントは学ばないと死にます。 そんな人のための解説を「パーフェクトJava EE」の方に書きました。Springの本に書くとtoo muchだったので。なのでSpring Bootを使っていてもJPAを使っている場合は必読です。
流れとしては
- はじめてのSpring Boot [改訂版] 一通り
- Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発 13章->14章
- Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発 2章
- Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発 その他足りない部分(Spring SecurityとかMVCとか)
- パーフェクト Java EE 13章->14章 (JPAを使う場合)
です。
Bootじゃないですが、XML->JavaConfigに読み変えられる人は http://terasolunaorg.github.io/guideline/ もオススメです。
以上。