検索

13.5.3. サービス依存関係の種類

download PDF
サービスは、次の 2 つのアプローチのいずれかを使用して、他のサービスへの依存関係を宣言できます。
@org.hibernate.service.spi.InjectService
単一のパラメーターを受け入れ、@InjectService でアノテーションが付けられたサービス実装クラスのメソッドは 、別のサービスの挿入を要求していると見なされます。
デフォルトでは、method パラメーターのタイプは、インジェクトされるサービスロールになることが想定されます。パラメーターのタイプがサービスロールと異なる場合は、InjectServiceserviceRole 属性を使用してロールに明示的な名前を付ける必要があります。
デフォルトでは、インジェクトされたサービスは必須とみなされ、名前付き依存サービスがないと、起動に失敗します。インジェクションするサービスがオプションの場合、InjectServicerequired 属性は false と宣言する必要があります (デフォルトは true)。
org.hibernate.service.spi.ServiceRegistryAwareService
次のアプローチは、単一の injectServices メソッドを宣言する、オプションのサービスインターフェース org.hibernate.service.spi.ServiceRegistryAwareService をサービスが実装するプルアプローチです。
Hibernate は起動時に、org.hibernate.service.ServiceRegistry 自体をこのインターフェースを実装するサービスに挿入します。その後、ServiceRegistry 参照を使用して必要な追加サービスを見つけることができます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.