MVCでHnibernateをサーバーにデプロイしたアプリケーションがあります。現在、このアプリケーションを使用しているクライアントは1つだけです。今では多くのクライアントがあり、すべてが異なるデータベースでこのアプリを使用しますが、スキーマはすべて同じです。 この実装では、アプローチを考えています。 私はテーブルに個々のクライアントデータベース接続文字列に関する情報を保持する新しいデータベースを作成しました。
アプリケーションが実行されると、Nhiberateはすべてのクライアントデータベースとメインデータベースを含むすべてのデータベースに対して複数のセッションファクトリを作成します。 たとえば、データベース名が「A_db」と「B_db」の2つのクライアント「A」と「B」があります。そして、 'All_db'として接続文字列を保持するもう一つのメインデータベース。次に、この場合、nhibernateは3つすべてのデータベースに対して3つのセッションファクトリを作成します。 したがって、ユーザーがログイン資格情報を入力すると、そのクライアントの関連接続文字列をメインデータベースからチェックします。そのクライアントデータベース接続文字列に関連しないすべてのセッションファクトリを破棄します。したがって、これを行うことで、自分のデータベースに属するセッションファクトリが1つだけ残ることになります。 これは私のアプローチが正しいのですか? そして、私は正しい方向に進み、複数のセッションファクトリを作成し、関連するものを除いてすべてのセッションファクトリを削除してこのアプローチのコードを提供しますか?NhibernateでMultitenantをMVCのSpringで使用する方法
0
A
答えて
0
GetSessionメソッドに接続文字列を指定できます。詳細はlinkをご覧ください。
関連する問題
- 1. Spring MVCでのマルチスレッドコンセプトの使用方法
- 2. Spring MVCで@ResponseBodyを使用する際のエラー処理方法
- 3. Spring MVCでBindingResultインターフェイスを使用する方法は?
- 4. @ModelAttributesと@SessionAttributeをSpring MVCで使用する方法
- 5. HikariCPとJdbcTemplateをSpringで使用する方法MVC 4
- 6. Spring MVCでUploadifyを使用する
- 7. Spring MVCでPOSTにリダイレクトする方法
- 8. Spring MVCのコンテキスト外でSpring Validatorを使用する
- 9. spring-mvcを使用してjackrabbitリポジトリをブラウズする方法
- 10. spring mvcを使用してビューを制御する方法は?
- 11. Spring MVCでURLを利用する方法は?
- 12. Spring MVCテストでAssertJアサーションを使用する方法はありますか?
- 13. PURE spring MVCサービスでSpring rooを使用するには?
- 14. JSPを使用してSpring MVCで画像を表示する方法
- 15. Controller Adviceを使用してSpring MVCで404エラーを処理する方法
- 16. Spring MVCでのApplicationContextの使用。
- 17. Springブートでのテンプレートエンジンの使用MVC
- 18. SpringBootでの@Componenscanの使用Spring MVCアプリケーション
- 19. VB.NETでnHibernateでQueryOverを使用する方法
- 20. Spring MVCでモデルクラスを使用するのはなぜですか?
- 21. spring mvcで正しくセッションを使用
- 22. Spring Cloud MicroserviceでSpring AMQPを使用する方法
- 23. springデータリポジトリでspring storedprocedureを使用する方法
- 24. Spring MockMVCをカスタムSpringセキュリティで使用する方法WebSecurityConfigurerAdapter
- 25. NHibernateの列挙型プロパティでICriteriaを使用する方法
- 26. Jsonデータを使用したSpring MVCでのサーバーサイド検証の最善の方法
- 27. Spring-mvcでアンカータグを使用してコントローラを呼び出す方法は?
- 28. SpringでのMVCコンセプトの適用方法(非Webアプリケーション)
- 29. ASP.NET MVCアプリケーションでNinjectを非MVCオブジェクトに使用する方法
- 30. nHibernateで大文字を使用する方法は?
1つのデータベース内のそれぞれのテーブルにClient_Id列を追加するだけの場合、クライアントごとにデータベースを分離するのはなぜですか? –
アプリケーションとクライアントが別々のデータベースに必要とするものです。 –