2

この質問に対する受け入れられた回答に基づいて、NetBeans/tomcat環境をセットアップしました。このセットアップのテストでは、Java Web / Webアプリケーションを作成しようとしていますが、このテストアプリのフレームワークの選択に困惑しています。

選択肢は次のとおりです。

  • Spring Web MVC 2.5
  • JavaServer Faces
  • Struts 1.3.8
  • Hibernate 3.2.5

私の読書(グーグルとSO)で、森の中でかなりすぐに迷子になったので、私はただ1つを選び、それがうまくいかない場合は、後で別のものに切り替える/移行することを検討しています。そのようなアプローチは実行可能でしょうか?


プロジェクトの背景

(レガシーコードのため、Javaベースである必要があります)
クライアント側のレンダリングと対話を行うために自己署名アプレットを使用します。
サーブレットは、クライアントから要求されたデータセットを取得します。
データベースはリモートサーバー上にある可能性があるため、データベースへのアクセスにはJDBCを使用する予定です。

レガシーシステムは、Javaに変換する必要のある多くのC ++モジュールをベースにしたCORBA(ACE / TAO)であり、CORBA呼び出しを行う既存のJavaモジュール(幸いなことに少数)は、新しく変換されたJavaを使用するように変更する必要があります-モジュール。

このプロジェクトを処理するためのより良いアプローチを思い付くことができれば、教えてください。

(このプロジェクトには、私が好きなもののすべての特徴があります。それは興味深く、やりがいがあり、新しいことを学びます)

4

3 に答える 3

3

まず第一に、SpringFramework全体を一般的に詳しく見てみるのは害にはなりませドキュメントは、非常に基本的なモジュールから始めて、Web MVCレイヤーに至るまで非常に優れています(Struts統合も可能です。たとえば、Struts統合も可能ですが、Strutsは常に面倒であることがわかりました。 )。Hibernateは、おそらく最も人気のあるObjectRelationMapperフレームワークです。これは、ドメインモデルオブジェクト(データベースに保存するすべてのもの)を保存、クエリ、および取得するために使用されますが、Webレイヤーとは何の関係もありません。

私は個人的にJSF(必要以上に時間がかかる別の仕様のモンスター)が好きではありません。ウィジェットベースのアプローチ(単純な古いHTMLを出力するのではなく、コンポーネントと一緒にページを作成する)を好む場合は、GoogleWebToolkitを確認することをお勧めします

もう1つのSpringソリューションはGRailsです。使用するのは本当に楽しいです。GroovyクラスはJavaクラスと互換性があるため(またはその逆)、別の(スクリプト)言語(Groovyと呼ばれる)を学習する必要がある場合でも、フレームワークですべてのJavaレガシークラスを使用できます。

そしてところで。CORBAは、言語に関係なくメソッドやオブジェクトにアクセスできるようにするテクノロジー/プロトコル/標準だと思いました。ウィキペディア:

Common Object Request Broker Architecture(CORBA)は、Object Management Group(OMG)によって定義された標準であり、複数のコンピューター言語で記述され、複数のコンピューターで実行されるソフトウェアコンポーネントを連携させることができます。つまり、複数のプラットフォームをサポートします。

では、なぜJavaと通信するためにC++モジュールを変換する必要があるのでしょうか。

于 2009-09-10T09:05:58.457 に答える
3

まず、リストからHibernateを削除します。ただし、ORM要件がある場合は、Web層とは関係なくHibernateを使用することをお勧めします。

次に、2つの選択肢があると思います。

  • SpringMVCとJSF
  • ストラット

どちらかのルートを進むと、そのAPIまたはそれらのAPIにコミットすることになり、後日切り替えるのに苦労することはありません。

私のアドバイスは次のとおりです。

  • Spring MVCを使用する-とにかくSpringを使用する可能性が高いため、当然の選択です。
  • JSFを無視し、JSTLを使用してBeanをレンダリングし、HTMLを自分で記述します。
  • JQuery / JavaScriptを使用して、ユーザーエクスペリエンスを充実させます。
  • オブジェクトの永続性にはHibernateを使用します。
于 2009-09-10T09:08:11.387 に答える
1

最小限のものを選び、必要に応じて追加するのは良い考えだと思います。そのようにして単純さを得る可能性があります。

アイデアは、「物事の壮大なスキーム」としてのSpringと統合テクノロジーから始めることかもしれません。次に、必要に応じて補数を追加します。

  • 永続性:Hibernate
  • javaScript:使用しているSpringMVCモジュールに適したjsライブラリを選択してください
于 2009-09-10T09:00:07.427 に答える