Spring Boot における Spring MVC のアーキテクチャ構成
以下はWARデプロイ方式の場合を想定した図になります。JARデプロイ方式の場合はSpring BootはTomcatの外に出る事になります。
Spring MVC リクエスト処理フロー(内部コンポーネント連携図)
以下はJSONオブジェクトを返却する場合の例ですが、Controllerからの戻り値がStringなら⑫がViewResolverに代わります。ViewResolverからの戻りの場合DispatcherServletはThymeleafViewのrenderメソッドを呼び出すことでHTMLを作成します。JSPの場合はJSPサーブレットにHTML作成を依頼します。つまりThymeleafの場合はDIコンテナで動作するためDIコンテナの恩恵を受ける事ができます(HTMLの中から直接Beanを呼び出せたりします。JSPの場合はDIコンテナの外にいるため、SpringのBean(Serviceなど)を呼ぶには、Controllerでわざわざデータを取得してModelに詰め込んでから渡す必要がありました。)

