2017-04-03 10 views
0

私は、JSPで記述された複数のページを持つ既存のjavaeeアプリケーションを持っています。既存のJavaアプリケーションとの角2

私の要件は、したがって、各ページに、私は特定のテーブルの上にCRUD操作を実行Angular2コンポーネントが含まれているdiv要素を持っていますアンギュラ2.

で、3つの独立したページの機能を作成することです。残りのページはjspのままです。

角度機能とページは完全に無関係です。例えば、あるページがアカウントや他の製品などを管理しているとします。

私はAngular2が新しく、私の質問は設計と導入の詳細です。

1)機能ごとに3種類のAngular 2アプリを作成するか、3つのコンポーネントで1つのアプリを作成する必要がありますか。後者の場合、ルートコンポーネントはどのように見えますか?

2)既存のJavaeeアプリでAngular2アプリをインポートするにはどうすればよいですか?私はcompile.bundleをしてバンドルをコピーすべきですか?

私が言及したように、私はAngular2が初めてであるので、どんな指針も非常に役に立ちます。

答えて

1

角度は「シングルページアプリケーション」のためのもので、通常は読み込みには高価ですが、読み込み時にはナビゲートするのが安いです。

Angular CLIを使用して、アプリケーションの構築と提供を行うことができます。あなたはwarファイルにインクルードするために "ng build"(Angular CLIコマンド)によってビルドされたビルドが必要です。おそらく、index.htmlの内容をいくつかのJSPに移動する必要があります。

Angularチュートリアル(Tour of Heroes)を終了しましたか?そうでない場合は、試してみてください、多くのことがあなたのために明確になります。

編集:

たぶん、あなたは角に、既存のJSPを書き換え検討することもでき、それはルーティングをすべて一つのアプリケーションです。しかし、実際にJSPで3回ロードする必要がある場合は、おそらく4つのモジュールで1つのアプリケーションを作成します.3つはページを表し、AppModuleのように見えます。 main.tsでは、あなたはアプリケーションの設定に従ってモジュールをロードします。最後のモジュールは、それらのモジュール間で共有されるコードです。これにより、3つの別々のアプリよりも保守が簡単になります。

開始モジュールmain.tsで

は、あなたがplatformBrowserDynamic()。bootstrapModule(AppModule)を呼び出すことによって、アプリケーションを起動しています。したがって、すべてのモジュールをインポートして、それらのうちの1つだけをブートストラップすることができます。 Angular CLIを使用する場合は、「環境」=構成をインポートして、それに応じてロードするモジュールを決定することもできます。

+0

ありがとう、はい私はチュートリアルを完了しました。これはスタンドアロンのアプリであれば問題はありませんが、統合の部分は混乱するものです。それぞれが異なるJSPになる場合は、3つのAngularページすべてに対して1つのビルドが必要ですか? – daoud175

+0

長いコメントを書くのを避けるために答えを編集しました。 –

+0

ありがとう、これは本当に助けになっています。ただ1つの簡単な説明。私は、あなたが「あなたはアプリケーションの設定に従ってモジュールをロードする」という意味をよく理解していません。たとえば、製品モジュール、顧客モジュール、注文モジュールなどがある場合これらのモジュールのそれぞれは、それぞれProduct.jsp、Customer.jspおよびOrde​​r.jsp内に表示されます。 (ユーザーがjspの1つを開くためにクリックするたびに、Angularモジュールもそのページにロードする必要があります)。それらはすべて、同じJavaアプリケーション内にあり、設定は1つだけです。 – daoud175

関連する問題