問題タブ [sessionfactory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hibernate - Spring/Hibernate での複数のセッション ファクトリ
マルチテナンシーをサポートするために、同じインスタンスで複数のデータベースをサポートする必要があるという要件が与えられました。各 DB には同一のスキーマがあります。ユーザーはリストから選択して特定のデータベースにログインし、その後のすべての呼び出しは、ログアウトするまでそのデータベースに移動します。
クライアントから提供されたパラメーターに基づいて、単一の HibernateDaoTemplate 内のセッション ファクトリをホット スワップしたいと考えています。
ホットスワップ データ ソース (およびそれに関連するすべてのトランザクションの問題) で多くのものを見つけることができますが、セッション ファクトリをホット スワップして、それぞれのすべてのキャッシュを保持したいと考えています。
これを行う最も簡単な方法は何ですか? DaoTemplate の HotSwappableTarget を構成しますか? これを行う方法のサンプルを教えてもらえますか?
hibernate - Hibernate: SessionFactory を JNDI 名にバインドしなくても大丈夫ですか?
hibernate.cfg.xml ファイルで SessionFactory の JNDI 名を設定する方法があります。ただし、Web アプリケーションで SessionFactory を取得するために JNDI ルックアップを明示的に使用していない場合、JNDI 名を付けなくても大丈夫ですか?
私が質問する理由は、JNDI 名を設定しなくても、JUnit テストが正常に実行されるからです。しかし、hibernate.cfg.xml の sessionfactory タグに「name」のみを指定してセットアップすると、最初に次のように表示されます。
そして例外をスローします:
だから私の回避策は、hibernate.cfg.xml から JNDI 名を削除することですが、それが他の問題を引き起こすかどうかわかりませんか?
c# - ASP.NETでのFluentNHibernateセッション管理
NHibernate(私の免責事項)は初めてです。MVCに関する同様の興味深い記事に出くわしましたが、一般的なWebアプリケーション内でNHibernateセッションを管理するための一般的なベストプラクティスについてはもっと興味があります。
Burrowプロジェクトに出くわしましたが、いくつかの異なる方向性があるように思われることに気づき始めています。データベースにアクセスする必要があるたびに新しいSessionFactoryを作成することはおそらく私の最善の利益ではないことを認識しているので、コミュニティがセッションを管理するために何をするかに興味があります。バロウを使っていますか?SessionFactoryをシングルトンでラップしますか?
どんな方向性や洞察も常に大歓迎です。
spring - org.springframework.beans.factory.BeanCurrentlyInCreationException: 'sessionFactory' という名前の Bean の作成中にエラーが発生しました
私は、mysql db の設定に spring と hibernate を使用しています。
私の we.xml ファイルには次のコードがあります。
私のapplicationcontext.xmlファイルには次のインポートがあります:
私の spring-db-applicationContext.xml には次のコードがあります。
適切なライブラリを含めました。プロジェクトの実行時に、次のエラーが発生します。
私の sessionFactory Bean がエラーを出しているのはなぜですか?
前もって感謝します...
nhibernate - 同じエンティティを持つ異なるデータベース サーバーの nhibernate セッション
Web アプリケーションで 2 つのデータベースを使用します。1 つは米国にあり、もう 1 つはカナダにあります。お住まいの国に基づくデータのみが表示されます。エンティティはすでに米国用に作成されているため、SessionFactory オブジェクトの作成に関しては問題があると思います。nHibernate が同じエンティティを使用して CAN データベースのファクトリを作成しようとすると、次のエラーが発生します。
接続文字列設定が見つかりませんでした (connection.connection_string または connection.connection_string_name プロパティを設定します)
この問題を解決するにはどうすればよいですか?
更新: スタック トレースは次のとおりです。
NHibernate.Connection.ConnectionProvider.Configure(IDictionary 2 settings)
at NHibernate.Connection.ConnectionProviderFactory.NewConnectionProvider(IDictionary
2 設定) で NHibernate.Cfg.SettingsFactory.BuildSettings(IDictionary`2 プロパティ) で NHibernate.Cfg.Configuration.BuildSettings() で NHibernate.Cfg.Configuration.BuildSessionFactory() で FluentNHibernate. Cfg.FluentConfiguration.BuildSessionFactory() in d:\Builds\FluentNH\src\FluentNHibernate\Cfg\FluentConfiguration.cs:line 93
nhibernate - NHibernateを同じスキーマの異なるデータベースに接続する
現在、データベースをいくつかの小さなデータベースに分割しています。スキーマはまったく同じであり、クライアントがログインしたときにシステムが接続するデータベースを制御します。nhibernate構成で接続文字列を設定しないと、エラーが発生します。各データベースにファクトリを作成したくありません。セッションファクトリに、使用する前に接続文字列を設定できるセッションを提供させることはできますか?
hibernate - org.hibernate.HibernateException: 現在、実行コンテキストにバインドされているセッションはありません
Spring Security を Hibernate と統合しようとしています。私は両方のテクノロジーに慣れていないので、ここで一度に多くの手順を実行していることはほぼ間違いありませんが、データベースからユーザーを認証したいところです。これは確かにSpring Securityの問題よりもHibernateの問題だと思いますが、いくつかのコンテキストを提供するために言及します。以下、エラーメッセージとコードです。誰でも何かを見つけることができますか?
DAO とトランザクション管理の構成:
UserDetailsService
ユーザーを認証するために呼び出される を実装するクラスを次に示します。これにより、DAO が呼び出されます。次の行を参照してくださいuserDAO.getUserByLogin(login);
。
データベースから読み取るDAOは次のとおりです。「GenericDAO パターン」を利用しようとしていることに注意してください。
エラーが発生するクラス、行は次のCriteria crit = getSessionFactory().getCurrentSession().createCriteria(getPersistentClass());
とおりです。
関連する可能性のある休止状態の構成 (hibernate.cfg.xml) に次のものがあります。
hibernate - Grails では、ドメイン クラスの静的メソッド内で休止状態のセッションにアクセスするにはどうすればよいですか?
Web でさまざまな記事を読んだことがありますが、この点に関しては散らばっているように見えます。休止状態セッションを取得するために、構成とメソッドで正確に何をする必要がありますか。ストアド プロシージャに対して直接 SQL 呼び出しを実行しようとしています。多くの静的メソッドとストアド プロシージャ コールを含む、Ruby から移植した大規模なコード ベースがあります。sessionFactory を使用する必要がある場合、アクセスするにはどうすればよいですか?
java - 同じデータソースを使用するトランザクションマネージャー
(db コール abc に接続)--->datasource1 ---> LocalSessionFactoryBean --->transactionManager1
(db コール abc に接続)--->datasource1 ----->AnnotationSessionFactoryBean -->transactionManager2
私が2つのsessionfactoryを持っている理由は、1つはサードパーティのosworkflowライブラリで使用され、後者は私のアプリケーションで使用されるためです
どちらも同じ「datasource1」(同じデータベース)への接続であるため、どちらかをサービスレイヤーのトランザクションマネージャーとして使用できますか?
エラーが発生します