かんがるーさんの日記

最近自分が興味をもったものを調べた時の手順等を書いています。今は Spring Boot をいじっています。

Spring Boot 1.3.x の Web アプリを 1.4.x へバージョンアップする ( 感想 )

記事一覧はこちらです。

  • 1.3系 → 1.4 系へのバージョンアップでは動かなくなるということはあまりなくて、どちらかと言うと書き方がいろいろ変わるので、1.4 系の書き方に変更するのが主な対応になる、という感じでした。

    • @Autowired アノテーションによるフィールドインジェクションからコンストラクタインジェクションへ。
    • @GetMapping, @PostMapping の新設。
    • テストのアノテーションの変更。モックも作りやすくなりました。今回書いていないものもありますが、本当にテストの部分は大きく変わりました。
  • Velocity が非推奨になったので FreeMarker に変えましたが、テキスト形式のテンプレートの場合には Thymeleaf 3 より FreeMarker の方が機能が揃っていて便利な気がします。ただし、デフォルトで数値は3桁毎に “,” 区切りになる等、まだ気付いていない点があるような気がしていて、使用時はちょっと注意が必要そうです。

  • CheckStyle, FindBugs を入れてみましたが、フォーマットやコードに問題があるところを指摘してくれるので便利でした。ただし Gradle を 3 系の最新版へバージョンアップすると FindBugs Plugin が警告メッセージを大量に出力するのが難点です。Gradle 3 へ上げようと思っていましたが、これのために止めました。FindBugs って今開発が止まっているんですよね。FindBugs を外して Gradle を 3 系へバージョンアップすべきか迷います。。。

  • ErrorProne は FindBugs では指摘してくれないコード上の問題点や、JDK 9 にした場合の問題点を報告してくれるので、こちらも今後は入れていきたいと思います。ただし lombok と相性が悪いんですよね。。。 バージョン 2.0.19 まで出ていますが、しばらく 2.0.15 で止めたままになる気がします。

  • 以下の2つを今回入れましたが、こちらも便利でした。今後も入れていきます。

次は 1.5.x へのバージョンアップをやる予定です。Thymeleaf も 3 に上げます。1.4.x → 1.5.x はそんなに大きな変更点はなさそうなので、短期間で終わるはず!(と言いつつ、たぶん寄り道するんだろうな。。。)