Spring Framework¶
はじめに¶
Java環境でWebアプリケーションを開発するためのフレームワークで、オープンソースプロジェクトで開発されています。
Javaでは、Webアプリケーションや基幹系システムの開発に対応する Java Enterprise Edition (Java EE、現Jakarata EE) の標準化と製品がありますが、複雑な仕様に対するアンチテーゼとして Rod Johnson氏らによりSpring Frameworkの開発が始まりました。
今ではJEEと共通することも多くなっています。
特徴は、DI(Dependency Injection)・AOP (Aspect Oriented Programming) 機能の導入、Servletおよび選択可能なHTMLテンプレートエンジンの上に構成されたSpring MVCフレームワーク、データベースアクセス、セキュリティなどの機能が提供されており、また、JEEに比べて複雑ではないという点でしょうか。
- SpringのMVCは、Front Controllerパターンを用いたもので、デザインパターンのMVCとは異なります。
Spring Frameworkの開発元¶
Spring Framework は、Rod Johnson氏が2002年に出版した書籍「Expert One-on-One J2EE Design and Development」で当時のJava EEへのアンチテーゼとして提供したサンプルのフレームワークに端を発し、2003年にオープンソースプロジェクトとしてSpring Framework 0.9がリリースされました。
その後、Rod Johnson氏が設立したInterface21社(その後、SpringSource社に改名)が主にSpring Frameworkの開発・サポートを提供していました。2009年に、VMware社がSpringSource社を買収し、以降はVMware社が開発・サポートを提供しています。一時期、Pivotal Software社にスピンオフしましたが、2019年にPivotal Software社はVMware社に買収され、その後、2023年にBroadcom社がVMware社を買収し、今時点ではBroadcomの一部門となっています。
Spring Frameworkのリリース経緯¶
バージョン | リリース年 |
---|---|
1.0 | 2004年 |
2.0 | 2006年 |
3.0 | 2009年 |
4.0 | 2013年 |
5.0 | 2016年 |
5.1 | 2018年 |
5.2 | 2019年 |
6.0 | 2022年 |
Spring Framework と Spring Boot¶
当初は、Java EEの複雑な仕様(特にEntity Bean)に対するアンチテーゼとして登場したSpring Frameworkも、次第に複雑化してしまい、多数のサブプロジェクトを組み合わせて設定・運用するのが難しくなりました。そこで、Spring Frameworkを簡単に設定・運用できる Spring Bootが登場しました。
お勉強メモ¶
「Spring徹底入門 第2版」より¶
参考情報¶
書籍¶
2024年調べ(和書)¶
2024年後半時点で、内容が古くなってはいない書籍をピックアップ(内容の評価は別)しました。
Springの書籍は、Spring Frameworkを中心に解説したものと、Spring Bootを前提に解説したものとに分かれています。
Spring Framework解説本
- プロになるためのSpring入門 - ゼロからの開発力養成講座
(土岐 孝平 著、技術評論社刊、2023年7月、384ページ) - Spring徹底入門 第2版 - Spring FrameworkによるJavaアプリケーション開発
(株式会社NTTデータ 著、翔泳社刊、2024年5月、752ページ) - 改訂新版 Spring Framework超入門 - やさしくわかるWebアプリ開発
(樹下 雅章 著、技術評論社刊、2024年4月、368ページ)
Spring Boot解説本(バージョン3以降を記載の本)
- Spring Boot 3 プログラミング入門
(掌田 津耶乃 著、秀和システム刊、2023年2月) - Spring Boot 3で始めるWebアプリケーション開発入門(基礎編)
(菊田 英明 著、Amazon個人出版、2022年12月) - Spring Boot 3で始めるWebアプリケーション開発入門(応用編)
(菊田 英明 著、Amazon個人出版、2022年12月) - Spring Boot 3で始めるWebアプリケーション開発入門(発展編)