株式会社カサレアルの、初心者向けSpring 5 ハンズオンを完了した

以下のSpringハンズオンをやりきったので報告です。非常におススメです。

qiita.com

私がこれを知ったのは去年12月のJJUG CCCでしたので、ようやく重い腰を上げて実施したわけです。

よいところ

  • 無料

  • すぐ終わる

3時間あれば全部のハンズオンを一通り終えることができます。*1

  • Springの基本的な全体像が分かる

Springを始めよう、またはSpring案件に入ったけど何が何だかわからない、という人には非常に有用です。

  • ハンズオン後に「その次やるべきこと」が示されている

実は講義編としてのスライドも用意されています。

www.slideshare.net

その中で、さらに学びたい場合の参考書籍が紹介されています。

学んだこと

Springは簡単なレベルで雰囲気で使っていましたが、今回のハンズオンでいくつか学びがありました。

「HogeHogeのBeanを、コンストラクタでDIする」という言い回し

あるクラス内で、とりあえずコンストラクタ周辺で以下のような記述がよくあります。

    // Fugaクラス内
    private final Hoge hoge;

    public Fuga(Hoge hoge) {
        this.hoge = hoge;
    }

今までは雰囲気で、「ここはBeanを使いまわしているからインスタンスを新しく作成する必要がないんだな~」くらいにしか思っていませんでしたが、

これで何をしているかが言葉で説明できるようになりました。

@Validatedアノテーションと検証用アノテーションの存在

フォームから入力された値に関するバリデーションはどこでもやると思いますが、コントローラーの各メソッドの引数に@Validatedを付与し、サーバーサイドのフォームを構成するプロパティに@NotBlank, @Length, @Emailなどのアノテーションを付けてチェックができることは初めて知りました。

ハンズオンの例にもあるように、ステートレスなバリデーションで使うのがいいかもと思いました。

その他

次はこれを読んで、さらに理解を深めたいと思います。

*1:IntelliJ IDEAやEclipseのインストールから始めるなど、まっさらな状態から環境構築するとなるともう少しかかる