ホームページ >Java >&#&チュートリアル >ServiceとClientのJava実装(Corba開発)の詳細説明

ServiceとClientのJava実装(Corba開発)の詳細説明

黄舟
黄舟オリジナル
2017-10-19 09:38:122459ブラウズ

この記事では、Corba が開発したサービスとクライアントの Java 実装に関する関連情報を中心に紹介します。この記事が必要な方の参考になれば幸いです。

が開発したサービスとクライアントの Java 実装について詳しく説明します。 Corba

1 概要

CORBA (Common Object Request Broker Architecture、Common Object Request Broker Architecture) は、OMG 組織によって開発された標準オブジェクト指向アプリケーション システム仕様です。言い換えれば、CORBA アーキテクチャは、分散処理環境 (DCE) におけるハードウェア システムとソフトウェア システムの相互接続を解決するために OMG によって提案されたソリューションです。

OMG: オブジェクト管理グループ、オブジェクト管理組織。この協会は、国際的なオープンメンバーの非営利コンピュータ業界標準協会であり、1989 年に設立されました。その責任は、アプリケーション開発のための公的フレームワークを提供し、業界ガイドラインとオブジェクト管理仕様を策定し、オブジェクトの開発を加速することです。テクノロジー。 。 。どの組織も OMG に参加し、標準開発プロセスに参加できます。 OMG は、統一モデリング言語 (UML) やモデル駆動アーキテクチャ (MDA) などのモデリング標準を開発しました。強力なビジュアルデザイン、実行、メンテナンスソフトウェアなどのプロセスを可能にします。さらに、OMG は、よく知られたミドルウェア標準 CommonObject Request Broker Architecture (CORBA?) も開発しました。

Common Object Request Broker Architecture CORBA (Common Object Request Broker Architecture) は、今日の多数のハードウェアとソフトウェア間の相互運用性を実現するために OMG によって定義されたソリューションです。CORBA は、オブジェクト指向の標準化と相互運用性への重要なステップでもあります。

簡単に言えば、CORBA を使用すると、アプリケーションが存在する場所や設計者に関係なく、つまりクロスプラットフォームおよびクロス言語でアプリケーションが相互に通信できるようになります。 CORBA1.1 は 1991 年に OMG によってリリースされ、インターフェイス定義言語 (IDL) と、オブジェクト リクエスト ブローカー (ORB) 内のクライアント オブジェクトとサーバー オブジェクト間の対話を実装するアプリケーション プログラミング インターフェイス (API) を定義しました。 CORBA2.0は1994年にリリースされ、さまざまなベンダー間のORBの通信ルールが規定されました。

CORBA 標準は主に、インターフェイス定義言語 (IDL)、オブジェクト リクエスト ブローカー (ORB)、および ORB 間の相互運用性プロトコル IIOP の 3 つの部分に分かれています。

IDL は CORBA によって定義された言語です。CORBA は、Ada、C、C++、Smalltalk、Java、Python などのさまざまな言語への IDL のマッピングも定義します。これらのマッピングを使用すると、IDL をさまざまな言語に翻訳できるため、クロスランゲージが実現します。 IDL 言語はインターフェイス定義言語です。 IDL 言語は、既存のすべてのプログラミング言語とは異なります。つまり、IDL 言語で記述されたインターフェイスは、直接コンパイルして実行することができません。 OMG IDL 言語は ISOLatin-1 (8859.1) 文字セットを使用します。文字セットは、文字、数字、グラフィック記号、スペース文字、および書式記号に分類できます。文字には英語の大文字と小文字 26 文字が含まれ、数字には 0 ~ 9 の 10 文字のアラビア数字が含まれます。

ORB は CORBA の中核であり、オブジェクト間のクライアント/サーバー関係を確立するミドルウェアです。 ORB を使用すると、顧客はサービス オブジェクトのメソッドを透過的に呼び出すことができます。サービス オブジェクトは、ローカルまたはネットワーク経由で接続されている他のマシン上にあります。 ORB はこの呼び出しをインターセプトし、サービスを実装するオブジェクトを検索し、それにパラメーターを渡し、メソッドを呼び出して最終結果を返します。クライアントは、サービス オブジェクトがどこにあるか、そのプログラミング言語とオペレーティング システムが何であるか、またはオブジェクトのインターフェイスの一部ではないシステムの他の部分を知りません。このようにして、ORB は、異種分散環境内の異なるマシン上のアプリケーションに相互運用性を提供し、複数のオブジェクト システムをシームレスに統合します。 クライアントがサーバー側のコードを呼び出すとき、ORB はクライアントには見えませんが、クライアントは独自のオブジェクトのメソッドを呼び出しているように見えますが、ネットワーク送信プロセスは ORB にカプセル化されます。

2 画像:

modulehelloapp {
  interfaceHello {
    string sayHello();
    oneway void shutdown();
  };
};

2. IDL ファイルを選択し、ORBMenu--->Compile を右クリックすると、対応する操作ファイルが自動的に生成されます


必要な操作ファイルの合計が自動的に生成されます


3 サーバー側の開発

1. src New--->Other--->CORBAWizard- を右クリックします。 -->サーバー--->アクティブ オブジェクト マップ-- ->次に示すように:

2. ポップアップダイアログボックスで、IDL ファイル名列で /{projectName}/src/{IDLname}.idl を選択します

インターフェース列で IDL ファイルに定義されているインターフェース名を選択します

パッケージを入力します[パッケージ] 列の名前

[サーバー クラス名] 列 サーバー クラス名を入力します

--->次へ ポップアップ ダイアログ ボックスで、Createserver クラス: item


3 を選択します。生成されたサーバークラスに未実装のメソッドを追加し、メソッド本体を入力します


これでサーバーの設定は完了し、Server_AOMクラスがサーバーの起動入り口となります。

4 IDL (以下に示すように):

3. 前の idl ファイルを選択します。

は、以下に示すように、クライアント ファイル操作を自動的に生成します。クライアント クラスの main メソッドで、test.getORBInterface().operation1("Amessage in the bottle...") のコメントを解除し、以前にカスタマイズしたメソッドを呼び出して、渡された String コンテンツを変更します。クライアントの呼び出しが完了しました。

注: サーバー プログラム Server_AOM.java を実行し、次にクライアント プログラム MyServiceClientImpl.java を実行します

これで、単純なサービスとクライアントの開発が完了しました。

以上がServiceとClientのJava実装(Corba開発)の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。