問題タブ [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.
java - 複数のセッションファクトリ、1つの接続?
XAのオーバーヘッドを回避するために、プロジェクトAのいくつかのテーブル名にプレフィックスを付け、プロジェクトBと同じmysqlデータベース内にロールアウトして、同じ接続を使用できるようにしました。完全なアトミック性などを取得したいと考えています。
ただし、プロジェクトAとBのセッションファクトリ構成は大きく異なります。プロジェクトB用にHibernateTransactionManagerを構成しましたが、AはTransactionSynchronizationManager.hasResource(sessionFactoryA)OSiVスタイルコードを使用してトランザクションに参加します。
これは概念的に機能しますか?Aでブレークポイントを試し、待機してから続行すると、タイムアウトによってBがロールバックしますが、Aはまだコミットします!!?
何が得られますか?助けてくれてありがとう。
c# - NHibernateSessionFactoryが1回だけ作成されるようにする
静的なNhibernateISessionFactoryを保持するNHibernateSessionFactoryクラスを作成しました。これは、セッションファクトリが1つしかないことを確認するために使用され、OpenSession()が最初に呼び出されたときに、実際のSessionFactoryを作成します。次に同じものを使用してセッションを開きます。コードは次のようになります。
今、私は問題を抱えています。私のアプリケーションはクライアントとサーバーに分割されています。Nhibernateのものはサーバー側にあります。起動時に、クライアントとサーバーの両方が、NhibernateSessionFactoryを使用するいくつかのサービスを介してデータベースにアクセスしたいと考えています。結果は、要求がクライアントから来る前に_sessionFactoryが作成されるかどうかの競合状態です。そうでない場合は失敗します。
NhibernateSessionFactoryに何らかのキューイングまたは待機メカニズムが必要だと思いますが、どうすればよいかわかりません。誰かが以前に同じ問題を抱えていましたか?最善の解決策は何ですか?
java - Hibernate SessionFactory:TomcatでJNDIを構成する方法は?
これが、セッションファクトリを取得する方法です。
Javaコードで単純なjndiルックアップを介してSessionFactoryを取得できるようにするために、Tomcat6の単純なソリューションを提供してください。Tomcat側のどのファイルに何を書き込む必要がありますか?
singleton - インスタンス化の失敗とシングルトンと動作の相互作用[NInject1]
私は次のようにNInject(バージョン1.5を使用)バインディングを設定しました:
ご覧のとおり、このバインディングはシングルトン動作を使用しますが、データベースへの接続文字列が間違っているなど、何かが正しく構成されていない場合にも例外をスローする可能性があります。
これで、セッションファクトリの作成が最初に失敗した場合(データベース例外がスローされた場合)、NInjectはオブジェクトの再作成を試みませんが、常にnullを返します。
最初にnullをチェックし、インスタンスがnullのときに再作成するには、NInjectが必要ですが、もちろん、インスタンスが正常に構築されている(シングルトンを維持している)場合は必要ありません。このような:
カスタム動作を作成する必要がありますか、それとも何か他のものが欠けていますか?
java - Hibernate での n テーブルから 1 クラスへのランタイム一方向マッピング
異なるテーブルにデータがありますが、同じデータベースにあり、それらはすべて同じスキーマを持っています。いくつかのランタイム変数に応じて、Hibernate を照会するときに使用するテーブルを選択したいと考えています。これは可能ですか?
Hibernate のみを使用して、テーブル データをオブジェクトに読み取ることに注意してください。
解決策 (私が思うに) は、*.hbm.xml
テーブルごとに 1 つのファイルと、テーブルごとに 1 つの SessionFactory です。
醜い。特に、ファイル間の唯一の違い*hbm.xml
はテーブル属性であることを考慮してください。
これを行うためのより洗練された方法はありますか?理想的には1 つ Class.hbm.xml
。
c# - NhibernateでCRUDメソッドとSessionFactoryをセットアップする良い方法は何ですか?
現在、セッションファクトリを作成するNHibernateHelperクラスがあります。「SessionClosed!」というエラーが表示され続けます。私はこれについて間違った方法で行っていますか?Add(User user)の後に呼び出されるAdd(Login login)を呼び出すとエラーが発生します
これが私のリポジトリです:
hibernate - 休止状態で非ID値を自動的に生成するにはどうすればよいですか?
私は休止状態の注釈、春、sessionFactory を使用し、context.xml ですべてを定義しています (そのように..)
私のエンティティにはいくつかのプロパティがあります.1つはIDで、もう1つは自動的に生成する必要がある文字列値「externalId」です。(例として、「dev_」の後に id を表す 5 桁の数値が続きます。したがって、id が 4 の場合、externalId は「dev_00004」になります)
どうすればこれを達成できるか知っている人はいますか?私は@PrePersistを調べましたが、すべてのdaoなどはsaveOrUpdateを使用しており、2つは連携していないようです。おそらく @preUpdate が機能するのではないかと思いましたが、これも呼び出されないようです。どうすればこれを達成できるかについて、誰かにアイデアを教えてもらえますか?
ありがとう!
nhibernate - SessionFactory - 複数のデータベース用の 1 つのファクトリ
同一のスキーマを持つ複数のデータベースがある状況がありますが、それぞれに異なるデータがあります。これを処理するために、単一のセッション ファクトリを作成しています。
問題は、どのデータベースに接続するかが実行時までわからないことです。ただし、起動時にファクトリ ビルドを取得するには、そのスキーマを使用してデータベースに接続する必要があります。現在、既知の場所にスキーマを作成してそれを使用することでこれを行っていますが、その要件を削除したいと考えています。
接続を指定せずにセッション ファクトリを作成する方法を見つけることができませんでした。パラメータなしで OpenSession メソッドを使用できるとは思っていませんが、それは問題ありません。
何か案は?ありがとうアンディ
nhibernate - リクエストごとのセッション (必要な場合のみ)
私はアプリケーション (asp.net mvc) を開発しており、リクエストごとに ISession を使用しています (globa.asax では、Begin_Request イベントと End_Request イベントで Bind と Unbind を使用しています)。すべて正常に動作しますが、場合によっては (一部の要求) ISession (データベースとの接続) を使用する必要はありません。
すべてのプロセス要求で ISession エントリを作成する必要がある場合にのみ ISession を開く方法があるかどうかを知りたいです (すべてのリポジトリとトランザクションの一意のコンテキストと共有するため)。
私はペニー オークションの Web サイトを開発しています。サーバーには 1 秒あたりのリクエストが多く、接続が必要ない場合もあります。キャッシュを使用します。
ありがとう
乾杯