Spring チュートリアル – Spring Core Framework のチュートリアル

は最も広く使われているJava EEフレームワークの一つです。私はSpringチュートリアルに多くの記事を書いており、これはそれらすべてを順番に確認するための索引として機能するまとめの投稿です。

Springチュートリアル

すべてのSpringチュートリアルには、チュートリアルページからダウンロードできるサンプルプロジェクトが付属しています。

Spring Core Tutorials

Spring Frameworkは依存性の注入アスペクト指向プログラミングの2つの設計原則に基づいています。以下のチュートリアルを通じて、実装例を交えてSpringの基本的なコンセプトについて学んでください。

  1. Spring FrameworkSpring Frameworkの進化、そのアーキテクチャ、コアコンポーネント、およびこの素晴らしいフレームワークの開発をガイドする原則について簡単に紹介します。
  2. 依存性注入のJavaの例この投稿では、依存性注入の基礎と、シンプルなJavaアプリケーションでDIパターンを実装する方法について説明します。これは良い出発点であり、その後にSpringの依存性注入に移行します。
  3. Springの依存性注入このチュートリアルは、Springフレームワークでの依存性注入の例を、アノテーションベースの構成とXMLベースの構成の両方で提供することを目的としています。チュートリアルには、実装を検証するためのJUnitテストプログラムも含まれています。
  4. SpringのAOPの例このチュートリアルでは、アスペクト、アドバイス、ポイントカット、ジョインポイント、AOPプロキシ、およびWeavingなど、アスペクト指向プログラミングの基本的な概念について説明します。チュートリアルでは、さまざまなタイプのアドバイスについても簡単なプログラムで説明します。
  5. SpringのAOPメソッドプロファイリング
  6. Spring IoCコンテナとSpring Beanの例のチュートリアル このチュートリアルは、例プログラムを使用してSpring IoCコンテナとSpring Beanの核心概念を説明することを目的としています。このチュートリアルでは、IoCコンテナとそのコアクラス、ApplicationContextを作成するさまざまな方法について説明します。チュートリアルではまた、Spring Bean、Spring Beanのスコープ、Spring Beanを構成するさまざまな方法(XML、アノテーション、プロジェクトの例を通じてのJavaベース)についても説明します。
  7. Spring Beanのスコープ Spring Beanのスコープを使用すると、Beanインスタンスの作成をより詳細に制御できます。
  8. Spring Beanオートワイヤリングの例 Spring IoCコンテナは、”spring autowire”属性を介して依存関係を注入するためのBeanをスマートに特定できます。このチュートリアルでは、さまざまな種類のオートワイヤリングについて、例を使って説明します。
  9. Spring Bean Life Cycle Spring Beansは、任意のSpringアプリケーションの最も重要な部分です。Spring ApplicationContextは、spring bean設定ファイルで定義されたSpring Beansを初期化する責任があります。このチュートリアルでは、spring beanでポスト初期化およびプリデストロイメソッドを提供するさまざまな方法について説明します – InitializingBean/DisposableBeanインターフェースまたはinit-method/destroy-method属性。Springフレームワークは、ポスト初期化およびプリデストロイメソッドを定義するための@PostConstructおよび@PreDestroy注釈もサポートしています。これらの注釈は、javax.annotationパッケージの一部です。また、Spring Awareインターフェースについても学びます。これを使用して、Servlet APIオブジェクトをspring beanにインジェクトできます。
  10. Spring 5 Spring 5は2017年末にリリースされました。Spring 5はSpringフレームワークへの大規模なアップデートをもたらします。
  11. Spring WebFlux Spring WebFluxは、Spring 5で導入された新しいモジュールです。Spring WebFluxは、Springフレームワークでリアクティブプログラミングモデルに向けた第一歩です。
  12. Spring Data JPA Spring Data JPAはSpring Dataファミリーの一部です。Spring Dataは、非関係データベース、マップリダクションフレームワーク、クラウドサービス、高度な関係データベースサポートなど、新しいデータアクセス方法を使用するSpring駆動のアプリケーションを作成しやすくします。

Spring Annotations

  1. Spring Annotations Springフレームワークで最も重要なアノテーションについて簡単に見てみましょう。
  2. Spring @Bean Spring @Beanアノテーションは、メソッドに適用され、そのメソッドがSpringコンテキストによって管理されるビーンを返すことを指定します。通常、Spring BeanアノテーションはConfigurationクラスのメソッドで宣言されます。
  3. Spring @Service Spring @Serviceアノテーションは@Componentアノテーションの特殊化です。Spring Serviceアノテーションは通常、クラスにのみ適用されます。これはクラスをサービスプロバイダとしてマークするために使用されます。
  4. Spring @Component Spring Componentアノテーションは、クラスをComponentとして示すために使用されます。これは、Springフレームワークがアノテーションベースの構成とクラスパススキャンを使用してこれらのクラスを依存性インジェクションのために自動検出することを意味します。
  5. Spring @RestController Spring RestControllerアノテーションは、@Controllerおよび@ResponseBodyでそれ自体が注釈付けされた便宜のアノテーションです。このアノテーションは、クラスをリクエストハンドラとしてマークするために適用されます。
  6. Spring @Controller Spring Controllerアノテーションは、@Componentアノテーションの特殊化です。Spring Controllerアノテーションは、通常、RequestMappingアノテーションに基づいたアノテーション付きハンドラメソッドと組み合わせて使用されます。
  7. Spring @Repository Spring @Repositoryアノテーションは、クラスがオブジェクトの格納、取得、検索、更新、削除操作を提供することを示すために使用されます。
  8. Spring @Configuration Springの@Configurationアノテーションは、Springコアフレームワークの一部です。SpringのConfigurationアノテーションは、クラスに@Bean定義メソッドがあることを示します。そのため、Springコンテナはクラスを処理し、アプリケーションで使用するSpring Beansを生成できます。
  9. Spring @Value Springの@Valueアノテーションは、変数やメソッド引数にデフォルト値を割り当てるために使用されます。この@Valueアノテーションを使用して、Spring環境変数およびシステム変数を読み取ることができます。
  10. Spring @PropertySource Springの@PropertySourceアノテーションは、Spring環境にプロパティファイルを提供するために使用されます。このアノテーションは@Configurationクラスとともに使用されます。
  11. Spring @PostConstruct と @PreDestroy Spring Bean のメソッドに @PostConstruct アノテーションを付けると、そのメソッドは Spring Bean が初期化された後に実行されます。Spring Bean のメソッドに PreDestroy アノテーションを付けると、そのメソッドは Bean インスタンスがコンテキストから削除される際に呼び出されます。
  12. Spring @Async Spring の @Async アノテーションを使用すると、Spring で非同期メソッドを作成できます。この Spring フレームワークのチュートリアルで @Async を詳しく見てみましょう。

Spring Boot チュートリアル

  1. Spring Boot チュートリアル
  2. Spring Boot コンポーネント
  3. Spring Boot @SpringBootApplication、SpringApplication クラス Spring Boot @SpringBootApplication 注釈は、1つ以上の @Bean メソッドを宣言し、自動構成とコンポーネントスキャンもトリガーする構成クラスをマークするために使用されます。Spring Boot SpringApplication クラスは、Java のメインメソッドから Spring アプリケーションを起動および起動するために使用されます。
  4. Spring Boot REST このチュートリアルでは、Spring Boot モジュールを使用して REST Web サービスを作成する方法について説明します。
  5. Spring Boot MongoDB Spring Boot アプリケーションで MongoDB を使用する方法について学びます。
  6. Spring Boot Redis Cache この記事では、Redis Cache を Spring Boot アプリケーションに統合する方法について説明します。
  7. Spring Boot Elasticsearch この記事では、Elasticsearch を Spring Boot アプリケーションに統合する方法について説明します。
  8. Spring Boot Actuator Endpoints Spring Boot Actuatorエンドポイントを使用すると、アプリケーションを監視および操作できます。Spring ActuatorはSpring Bootのサブモジュールであり、アプリケーションに対して有効または無効にできる組み込みのエンドポイントを提供します。
  9. Spring Boot Initializr Web Interface
  10. Spring Boot CLI Example
  11. Spring Boot – NONEというデータベースタイプの埋め込みデータベースドライバークラスを判別できません
  12. Spring Boot インタビュー質問

Spring MVC チュートリアル

  1. Spring Tool Suiteを使用した初心者向けSpring MVCチュートリアル Spring MVCモジュールは、JavaベースのWebアプリケーションを作成するのに役立ちます。これはSpring MVCシリーズの最初の投稿であり、Spring MVCフレームワークを使用してSpring Tool Suite (STS)を使ってシンプルなWebアプリケーションを作成する方法を学びます。
  2. Spring MVCの例このチュートリアルでは、Spring MVCアプリケーションをmavenとEclipse IDEを使用して作成する方法について説明します。Spring Tool Suiteを使用せずに。
  3. JSONを使用したSpring Restful Webサービスの例Spring Frameworkには、Jackson JSON APIへの組み込みサポートがあり、それを利用してJSONレスポンスを返すRESTful Webサービスを作成できます。このチュートリアルでは、アプリケーションの異なる部分すべてについて説明し、JSONレスポンスを返すようにアプリケーションを構成し、Rest APIを実装するために必要な手順を説明します。
  4. Spring REST XMLとJSONSpring RESTは、XMLとJSONベースのリクエスト-レスポンスメッセージの両方をサポートしています。このチュートリアルでは、シンプルな設定を使用して両方を簡単にサポートできる方法について説明します。
  5. Spring RestTemplateSpring RestTemplateは、RESTful Webサービスをテストする便利な方法を提供します。RestTemplateを使用して、HTTPベースのRESTful Webサービスをテストできますが、HTTPSプロトコルはサポートされていません。
  6. Spring MVCファイルアップロードの例 ファイルのアップロードはWebアプリケーションの一般的なタスクの一つです。そのため、SpringはApache Commons FileUpload APIを統合してファイルのアップロードをサポートしています。このチュートリアルは、単一および複数のファイルをアップロードする例とともに、異なるコンポーネントがどのように構成されるかを理解することを目的としています。
  7. Spring MVC国際化とローカリゼーションの例 世界中のユーザーを対象としたWebアプリケーションでは、国際化(i18n)やローカリゼーション(L10n)がユーザーとの良好なインタラクションのために非常に重要です。ほとんどのWebアプリケーションフレームワークは、ユーザーのロケール設定に基づいてアプリケーションをローカライズする簡単な方法を提供しています。Springもこのパターンに従い、Springインターセプター、ロケールリゾルバ、異なるロケール用のリソースバンドルを使用した国際化(i18n)のための広範なサポートを提供しています。このチュートリアルでは、春のWebアプリケーションでのi18nとl10nのプロセスを例題プロジェクトを通じて説明しています。
  8. Spring MVCフォームバリデーションの例 ウェブアプリケーションでユーザーの入力を受け入れる場合、それを検証する必要があります。クライアントサイドでJavaScriptを使用してユーザー入力を検証できますが、ユーザーがJavaScriptを無効にしている場合にも、サーバーサイドでそれらを検証する必要があります。 Spring MVCフレームワークはデフォルトでJSR-303仕様をサポートしており、Spring MVCアプリケーションにJSR-303とその実装依存関係を追加する必要があります。 Springはまた、コントローラリクエストハンドラメソッド内のバリデータ実装によって発生したエラーを取得できる@Validator注釈とBindingResultクラスを提供します。チュートリアルでは、注釈を使用したフォームの検証例と、独自のカスタムバリデータを作成するプロセスも説明されています。
  9. Spring MVC例外処理 どのウェブアプリケーションも、アプリケーションが投げた未処理の例外が発生した場合にコンテナが生成したページを提供したくありませんので、例外処理のための良い設計が必要です。 Spring MVCフレームワークは、コントローラクラス、グローバル例外ハンドラ、およびHandlerExceptionResolver実装を介した堅牢な例外処理のアプローチを提供します。チュートリアルの例プロジェクトを確認して、Spring MVC例外処理について詳しく学んでください。
  10. Spring MVC インターセプターの例 時には、HTTPリクエストをインターセプトして、コントローラーハンドラーメソッドに渡す前に何らかの処理を行いたい場合があります。 そこで、Spring MVCのインターセプターが役立ちます。 Springでは、org.springframework.web.servlet.HandlerInterceptorインターフェースを実装するか、このインターフェースの基本実装を提供するorg.springframework.web.servlet.handler.HandlerInterceptorAdapter抽象クラスをオーバーライドすることで、独自のインターセプターを作成できます。 Spring MVC インターセプターについて詳しくは、チュートリアル内の例題プロジェクトをチェックしてください。
  11. Spring MVC RequestMappingの例 @RequestMappingは、最も広く使用されているSpring MVCアノテーションの1つです。 org.springframework.web.bind.annotation.RequestMappingアノテーションは、ウェブリクエストを特定のハンドラークラスや/またはハンドラーメソッドにマッピングするために使用されます。 @RequestMappingは、コントローラークラスおよびメソッドに適用することができます。 このチュートリアルでは、さまざまな使用方法と例、テストプログラムについて説明します。
  12. Springセッション管理Springセッションモジュールは、Webアプリケーションでユーザーセッションを管理するためのAPIおよび実装を提供します。Springセッションは、アプリケーションからセッション管理ロジックを切り離し、より耐障害性を高めます。Springセッションには、次のモジュールが含まれています:Springセッションコア、SpringセッションJDBC、SpringセッションデータRedis、およびSpringセッションHazelcast。
  13. Spring MVC Gradleの例

Spring Batchチュートリアル

  1. Spring BatchSpring Batchを使用すると、バッチを作成して大量のレコードを簡単に処理できます。この記事では、Spring Batchとは何か、そのアーキテクチャ、Spring Batchアプリケーションの使用時について説明します。
  2. Spring Batchの例このチュートリアルでは、大きなCSVファイルを処理するSpring Batchプロジェクトの作成方法について説明します。

Spring JDBCチュートリアル

ほとんどの企業アプリケーションはリレーショナルデータベースを扱います。そのため、SpringはJDBC APIに対する包括的なサポートを提供し、また、データベースのCRUD操作を実行するためのラッパーも提供しています。

  1. Spring JDBCとDataSourceを使用したJdbcTemplate CRUDの例 Spring FrameworkはJDBC APIとの優れた統合を提供し、ResultSet、PreparedStatementなどのデータベース操作ロジックからのボイラープレートコードを回避するために使用できるJdbcTemplateユーティリティクラスを提供しています。このチュートリアルでは、Spring JDBC統合を使用したCRUD操作の例を提供します。
  2. Tomcatを使用したSpring DataSource JNDIの例また、DataSourceとJNDIを使用した方が、コネクションプーリングを実現し、コンテナの実装の利点を得るための好ましい方法であることも知られています。このチュートリアルでは、tomcatコンテナで定義されたDataSourceをJNDIリソースとして使用してデータベース接続を取得し、さまざまな操作を実行する方法について説明します。コンテナがデータベースリソースの管理を行うため、Springウェブアプリケーションでデータベース接続を取得するための推奨される方法です。
  3. SpringのJDBCを使用したトランザクション管理の例 トランザクション管理はエンタープライズアプリケーションでの些細なタスクです。Springはトランザクション管理に広範なサポートを提供し、開発者がデータの整合性を心配するのではなく、ビジネスロジックにより焦点を当てるのを助けます。Springの宣言的なトランザクション管理は、使用が非常に簡単で直接の依存関係がないため、トランザクション管理のための優先されるアプローチです。AOPおよび依存性注入を使用しています。
  4. Spring JdbcTemplate Spring JdbcTemplateクラスはSpring JDBCモジュールの中核です。SQLクエリの実行、結果セットデータの読み取りなど、さまざまなメソッドを提供しています。

Spring Hibernateチュートリアル

Springは最も広く使用されているJava EEフレームワークの1つであり、Hibernateは市場で最も優れたORMフレームワークです。そのため、SpringはSpring ORMモジュールでHibernateへの組み込みサポートを提供しています。

  1. Spring Hibernate統合の例 このチュートリアルでは、HibernateをSpringスタンドアロンアプリケーションに統合する具体例を提供しています。例では、Spring 4 + Hibernate 4およびSpring 4 + Hibernate 3の統合が示されています。
  2. Spring MVC Hibernate CRUDの例 Spring MVCはHibernateフレームワークと簡単に統合できます。また、私たちはSpringの宣言的トランザクション管理を利用することができます。これにより、アプリケーションがボイラープレートコードから解放されます。
  3. Spring ORMの例
  4. Spring ORMとAOPトランザクション管理

Springセキュリティチュートリアル

Springセキュリティは任意のJava Webアプリケーションに適用でき、アプリケーションの別の部分として機能し、認証と認可のさまざまな方法を提供します。

  1. Servlet WebアプリケーションでのSpringセキュリティ このチュートリアルでは、Springセキュリティモジュールの基本を説明します。また、例として、メモリ内、DAO、およびJDBCベースの認証を使用したプロジェクトの例を提供します。
  2. Spring MVCセキュリティの例 Spring MVCフレームワークを使用している場合、Springベースの設定がすでにあるため、Springセキュリティを適用するのは非常に簡単です。必要なのはセキュリティ関連の設定をプラグインするだけです。
  3. Spring 4セキュリティ この記事では、Spring 4で導入されたSpringセキュリティモジュールについて説明します。
  4. SpringセキュリティMVC この記事では、SpringセキュリティをSpring MVCアプリケーションに統合する方法について説明します。
  5. Springセキュリティロールベースのアクセス認可

Spring統合チュートリアル

  1. Spring JSF統合の例チュートリアル JSFはユーザーインターフェイスに重点を置いたコンポーネントベースのフレームワークですが、Springの核心原則は依存性の注入です。このチュートリアルでは、JSFをSpringフレームワークと統合して最大の効果を得る方法について説明します。
  2. Primefaces Spring & Hibernate Integration Example Tutorialこれは、PrimeFacesをSpringおよびHibernateフレームワークと統合する方法について説明した統合の一例です。これは、各フレームワークの機能を最大限に活用するために非常によく使用される組み合わせの一つです。
  3. PrimeFaces Hibernate SpringRoo Integration ExampleSpringRooは、Javaベースのエンタープライズソフトウェアアプリケーションを、ドリブンなコマンドラインの方法で効率的に生成するために慣習に従った設定の概念を使用するオープンソースのソフトウェアツールです。このチュートリアルでは、SpringRoo、PrimeFaces、およびHibernateフレームワークの統合について説明しています。

Spring Messaging

  1. Spring AMQP
  2. Spring RabbitMQ
  3. Spring RabbitMQ Example
  4. Spring ActiveMQ Part 1
  5. Spring ActiveMQ Part 2

春の面接の質問

Java EEの面接を受ける予定で、Springが必要な場合、この投稿が知識をすばやく更新するのに役立つことを願っています。それが今のところすべてのSpringチュートリアルです。Springフレームワークには多くのモジュールがあり、将来的にそれについて投稿し、ここに含めていく予定です。そのため、この投稿を将来の参照のためにブックマークすることをお勧めします。

Source:
https://www.digitalocean.com/community/tutorials/spring-tutorial-spring-core-tutorial