branch10480’s blog

Topics that I've learned.

Spring Boot学習メモ1

Spring Boot 学習メモ

Spring Boot とは?

SpringアプリケーションをXMLの記述なしで迅速に作成できるものです。

パッケージ名

パッケージ名はすべて小文字で記述します。 これはクラス、インタフェースとの競合を避けるためです。

e.g.) DTO -> dto, myApp -> myapp

Spring Boot での推奨テンプレートエンジンは Thymeleaf

昔はJSP(JavaServer Pages)が主流でした。しかし、Spring BootではJSPは非推奨になっており、代わりにThymeleaf(タイムリーフ)を使用します。

ThymeleafはHTMLにth属性をつけて利用します。

アノテーションまとめ

アノテーション 説明
@Controller コントローラーで有ることを示す
@RequestParam リクエスト値(パラメータ)を受け取る。name = "hoge" String hoge の場合、name = "hoge" は省略可能。

Spring MVC

フロントコントローラー(Front Controller) Pattern に分類されています。 Front Controller は Spring MVC が管理するコントローラーで、その具体的な処理を意識する必要は無いです。

タイトル 説明
Model 動的なデータ構造のことを言い、ごくごく普通のオブジェクト(POJO: Plain Old Java Object)やEntityのことを指します。
View(template) Thymeleafが役割を担います。
Controller @Controllerアノテーションをつけたクラスのことを言います。

Lombok

定形文の削除に役立つJavaアノテーションライブラリです。

アノテーション 説明
@Data getterやsetterなどの定形コードを自動生成してくれる。他にもequals(), canEqual(), hashCode(), toString()などのコードも自動生成される。

試しに@Dataアノテーションをつけたクラスのコンパイル後のクラスを見てみると良いです。 target > classes から辿っていきます。