Spring initilazrが初心者にめちゃくちゃ厳しかった
お久しぶりです。
さばみそです。
最近、転職しました。(転職については、また別記事で書きたいと思います)
そこで初めて、Spring bootを触ったのですが、非常に初心者に厳しい設定だったことに気づいたので、この記事を見て少しでも、手助けになればと思い綴ります。
まず開発環境ですが、
intelliJ CEを使ってました。
Spring initilazrを使う際、 intelliJ ultimateならそのまま initilazeできるのですが、無料版のCEなら、WebのSpring initilazrから直接生成して、importでprojectを作ることになります
初めての私は、ふむふむなるほどねと、得意げに initilazeし、importして、当たり前のようにHello worldを出そうとしました。
だがしかし、、、、できない
エラーが出る。。。。何故だ、何もしていないはず、、、
そこでいろいろ調べてみると、depencyseにstarter-webが入っていない。。。。。
そんなことがあるのか。。。
initilazrだぞ、、、、と思いながら、pom.mvnを見る。。。。
確かにない、不親切な initilazrだな、その時までは、これくらいの認識でした。
そこからが戦いでした
簡単なCRUD機能のテストを実装して、デバッグした時でした。。。
デバッグには成功して、webページへアクセスし、モデルの作成フォームへアクセスしたところ、404エラー。。。
何故だ。。。
Controllerが悪いのかと思ったが、マッピングもうまくいってる
そして、viewも存在する
それなのに404...
訳がわからない
先輩に聞いて、先輩と一緒に最初から作るも、同じくエラー。。。。意味がわからない
そこでわかったのが、viewで、thymeleafを使っているということ
Spring bootでは、テンプレートエンジンにJSPではなく、thymeleafを推奨しています!そう、推奨しているんです
だがしかし、depencyseにない。。。。
initilazrよ、仕事をしてくれ
initilazrという名前なのに、一式の機能が全く入ってない。。。
そんなもの初心者には気づく訳がない。。。。
皆さんも、SpringBootでspring initilazrを使う際、starter-webやjpa、thymleafなどが入っていることを確認して、イニシャライズしてください
以上、独り言のような記事でした