私の会社では、機能が重複する複数の Web アプリケーションを作成しています。共通機能を別のプロジェクトとして開発したいと考えています。それは Web ページとマネージド Bean で構成されるため、プロジェクトは独自の .war ファイルにある必要があると思います。次に、おそらく 2 つ (またはそれ以上) の Web アプリケーションを .ear ファイル内にデプロイします。オンラインで予備調査を行った結果、Web アプリケーションがどの程度うまく連携するのか確信が持てませんでした。マネージド Bean 間でデータを共有し、ある Web アプリケーション内のページから別の Web アプリケーションにユーザーを誘導することはできますか? アプリケーションを保守可能にするための適切なアプローチはありますか、それともプロジェクトを分割するためのより良い方法はありますか?
1940 次
2 に答える
1
これはやり過ぎ
ですが、アプリの機能を DB、ビジネス ロジック、およびプレゼンテーション /web/ 層に分割できます。「重複する」機能は、ビジネス層と DB 層に移動できます。
Web フロントは、階層 2 /business/ にあるコネクタに応じて、corba、REST/LESS、soap、または代替手段を介してビジネス層と通信する必要があります。
詳細については、この図
または Google 3 層アーキテクチャを参照してください
私の会社は数年前に同じ問題を抱えていました。彼らは最終的に複数のアプリを展開することになりました / いくつかのビジネスロジックの重複は避けられませんでした /
今では、Web サービスを介して呼び出すことができ、部門内のどこからでも他のアプリ/スクリプトにアクセスできる、共通のオープンなビジネス レイヤー サービス層を作成することで、車輪を再発明しました。
于 2012-05-31T20:44:42.570 に答える
0
すべての WAR ファイルを EAR ファイルにラップします。そして、すべての WAR ファイルが共有できるように、ライブラリ ファイルを EAR に入れます。
于 2012-09-07T04:26:15.167 に答える