リモートサービス(RMIなど)を呼び出してHibernateを使用してデータベースからエンティティのリストをロードする場合、すべてのフィールドを初期化してクライアントのニーズを参照するためにリモートサービスをどのように管理しますか?
例:クライアントはリモートメソッドを呼び出してすべての顧客をロードします。クライアントはそれぞれの顧客について、購入した記事の顧客リストへの参照を初期化することを望んでいます。
次の解決策が想像できます。
必要なフィールド(Hibernate.initialize()など)を初期化し、ドメインオブジェクトをクライアントに返す特別なクエリごとにリモートメソッドを記述します。
1.に似ていますが、DTOを作成します
クエリを複数のクエリに分割します。たとえば、1つは顧客用、もう1つは顧客の記事用で、クライアントが結果を管理できるようにします。
リモートメソッドは、クライアントによって作成され、サーバーによって実行されるDetachedCriteriaを取ります
カスタムの "Preload-Pattern"、つまりクライアントがどのプロパティをプリロードするかを明示的に指定する方法を開発します。
私は過去に1を使用したことがあり、うまくいきました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加