Design-pattern-service-locator-pattern
デザインパターン-サービスロケーターパターン
サービスロケーターデザインパターンは、JNDIルックアップを使用してさまざまなサービスを検索するときに使用されます。 サービスのJNDIを検索するコストが高いことを考慮して、Service Locatorパターンはキャッシング手法を使用します。 サービスが初めて必要になると、Service LocatorはJNDIで検索し、サービスオブジェクトをキャッシュします。 さらに検索またはService Locatorを介した同じサービスがキャッシュで実行されるため、アプリケーションのパフォーマンスが大幅に向上します。 以下は、このタイプのデザインパターンのエンティティです。
- サービス-リクエストを処理する実際のサービス。 このようなサービスの参照は、JNDIサーバーで確認する必要があります。
- コンテキスト/初期コンテキスト-JNDIコンテキストは、ルックアップの目的で使用されるサービスへの参照を保持します。
- Service Locator -Service Locatorは、サービスをキャッシュするJNDIルックアップによってサービスを取得するための単一の連絡先です。
- キャッシュ-サービスの参照を保存して再利用するためのキャッシュ
- クライアント-クライアントは、ServiceLocatorを介してサービスを呼び出すオブジェクトです。
実装
エンティティを表すさまざまなオブジェクトとして_ServiceLocator 、 InitialContext_、Cache、_Service_を作成します。_Service1_と_Service2_は具体的なサービスを表します。
デモクラス_ServiceLocatorPatternDemo_は、ここでクライアントとして機能し、_ServiceLocator_を使用してService Locatorのデザインパターンを示します。
ステップ1
サービスインターフェイスを作成します。
Service.java
ステップ2
具体的なサービスを作成します。
Service1.java
Service2.java
ステップ3
JNDIルックアップ用のInitialContextを作成します
InitialContext.java
ステップ4
キャッシュを作成
Cache.java
ステップ5
サービスロケーターの作成
ServiceLocator.java
ステップ6
_ServiceLocator_を使用して、Service Locator Design Patternを示します。
ServiceLocatorPatternDemo.java
ステップ7
出力を確認します。