Java EE
概要
2018年3月からJakartaEEへ名称変更
Oracle→Eclipse Foundation
Webアプリケーション開発に必要な機能を盛り込んだsdk
JavaEEはあくまでも仕様
JavaEEの実装は各ベンダーから出されている
tomcat
grassfish
EEを採用する理由は標準仕様だからということ以外は正直ない
CDI
Context and Dependency Injection
EE標準のDIフレームワーク
スコープも管理してくれる→Request、Sessionなどの期間だけ生存しているなど
プロファイル
JavaEEは巨大すぎるので、一部切り出した構成がプロファイル
軽量なフレームワークへのニーズが高まっている→特定の機能を抜き出してまとめるプロファイルと言う概念
Java EE Web Profile
Webアプリケーションに最適化
MicroProfile
MSAのためのプロファイル
TomcatとGlassFish
table:比較
機能 Tocat GlassFish
Webコンテナ(JSP、Servlet) ⭕️ ⭕️
EJBコンテナ
フレームワーク(JSF、JPA、CDI)
アプリケーション管理
リソース管理
tomcatは必要最低限の機能
JavaEEとSpringとの違い
JavaEE
tomcat/grassfishなどのアプリケーションコンテナの上に開発したwarファイルを配置することで動かす
依存関係が複雑になりミドルウェアのアップデートなどが凄い大変
Spring
開発したコードもtomcatも全てまとめて実行可能な一つのJarにまとめる(fatJar)
https://gyazo.com/51efb6ef6479f6cc2599afd58adcb05e
参照
【前編】Spring Bootってなにがいいの