問題タブ [hibernate-cache]
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 - hibernate delete セカンドレベル jpa2.0
アプリケーションで、キャッシュ可能なテーブルからすべてのデータを削除する必要があります。すべてのコンテンツを削除するには、第 2 レベルのキャッシュを削除してから切り捨てを使用する必要があると思いました。
Dao メソッド:
持続性ファイル:
私が持っているエラー:
hibernate - Hibernate sessionfactory が原因で Jclouds2 をスローする EC2 インスタンスを作成できません
Jclouds を使用して Amazon EC2 インスタンスを作成する Java クラスがあります。このコードはうまく機能し、スタンドアロンで実行すると EC2 インスタンスが作成されます。
しかし、アプリケーションを実行しているときにエラーが発生し、パラメーターが変更されておらず、何も変更されていません。
デバッグすると、アプリケーションが Hibernate SessionFactory を作成するとすぐに、EC2 インスタンス作成用の Java コードでこのエラーが発生することに気付きました。
問題は、一部のセッション変数にあるか、キャッシュの問題にある可能性があります。
これは、Jclouds クラスを呼び出すコードです。
以下は、EC2 インスタンスを作成するコードです。
そして、私が得るエラーは次のとおりです
java - サンプルキャッシングによる休止状態のクエリ
次のマップされたエンティティがあります。
更新も削除もありません。特定の eKey にセキュリティがない場合、新しいレコードが追加されます。
選択クエリは非常に単純ですが、1 日あたり最大 100 万件以上のクエリが並行して実行されます (+新しいレコードが追加されることもあります)。ということで、なんとかキャッシュしようと思います。
Dao 内には次のようなものがあります。
このリクエストをキャッシュする最善の方法を考えています。Atm 私が考える:
しかし、この場合、キャッシュするためのより良い (より簡単な) 方法があるでしょうか?
sql - SQL クエリは、hql の代わりに第 2 レベルの休止状態キャッシュを使用しますか?
基本的に、私はそれについての知識を持っていません。疑問を解消したいだけです。Hibernate API を使用して sql in place hql を使用する場合、データベースでクエリを実行する前に 2 次キャッシュを使用しますか? その理由は、2 次キャッシュをできるだけ活用したいからです。
hibernate - モジュールとして WildFly に hibernate-ehcache.jar と ehcache-core.jar を追加する
persistence.xml
次のように、他の関連プロパティとともにキャッシュ プロバイダーを構成します。
これは、次の 2 つの JAR ファイルが EE モジュール自体のコンパイル時のクラスパスに追加されている場合に機能します。
- hibernate-ehcache-5.0.6.Final.jar
- ehcache-core-2.4.3.jar
これらの JAR ファイルはコンパイル時のクラスパスに存在する必要がないため、これらの JAR ファイルをモジュールとしてサーバー自体に追加することは許可されていますか?
で次のようなモジュールを実行しようとすると、例外が発生します${Home}/modules/system/layers/base/net/sf/ehcache/main/module.xml
。
まったく効果がないかのように、次の例外がスローされます。
これら 2 つの JAR ファイルをモジュールとしてサーバーに追加することは許可されていませんか、それとも別の方法でこれを実現できますか?
モジュールorg.hibernate
には、次のリソースとその依存関係が含まれています。
WildFly 9.0.2 final で Hibernate 5.0.6 final を使用しています。
java - Hibernate クエリ キャッシュが機能しない
ここに私のコードがあります:
コンソール :
2 次キャッシュは機能しますが、クエリ キャッシュが機能しない理由がわかりません。何が起こっているのか誰が説明できますか?? 感謝します、事前にthx :)
私のエンティティ:
persistence-hidden.xml :
ehcache.xml :
Maven の依存関係:
hibernate - 休止状態でキャッシュされた結果を無効にする
私のアプリケーションには、ジョブ出力を内部的にポーリングするサービスがあります。ジョブのステータスが「進行中」から「完了」に変わるまでポーリングします。ジョブを処理すると、別のシステムがジョブのステータスを「完了」に更新しようとしています。
ここでの問題は、ジョブのステータスが DB から初めてポーリングされたときに、ステータスが「進行中」になることです。しかし、後でジョブのステータスが他のプロセスによって変更された場合でも、「進行中」と表示されます。休止状態のクエリがトランザクション外で実行されているため、問題は DB 分離レベル (反復可能読み取り) にはありません。結果がキャッシュされていると思われ、同じクエリが同じセッションで実行されると、キャッシュされた結果が得られます。
同じクエリが同じセッションで複数回実行されたときに、DB から更新されたデータを取得するにはどうすればよいですか。
よろしく、チャンドゥ
java - Hibernate の第 2 レベルのキャッシュは、キャッシュを構築するために WHERE 句のみを使用するか、クエリ全体を使用しますか?
シナリオ: 製品 ID の主キーを持つ製品テーブルがあります。読み取り専用戦略でセカンダリ キャッシュ (ehcache) を使用して休止状態をセットアップし、クエリ キャッシュを有効にしました。
オラクルのフラッシュバック機能を使い始めたいという要望があります
質問:
私が知りたいのは、製品テーブルが (フラッシュバック機能を使用して) アーカイブされ、次のように SQL クエリを使用する場合、休止状態でセットアップされたクエリ キャッシュにどのような影響があるかということです。Hibernate はAS OF
、照会されたときに製品エンティティをキャッシュおよび提供する際に、タイムスタンプを認識して考慮に入れますか?:
基本的に問題は、Hibernate キャッシュは純粋にWHERE
句に基づいているのか、それともキャッシュをチェックするときにクエリ全体を考慮しているのかということです。
java - Hibernate の第 1 レベル キャッシュの使用
単純な質問に見えます。私はたくさん理解しようとしましたが、失敗しました。
私の知る限り、Hibernate の最初のレベルのキャッシュはセッション レベルのキャッシュを意味します。同じセッションで同じオブジェクトを複数回取得すると、キャッシュから取得されます。
たとえば、データベースに ID 100 の Employee レコードがあります。
セッションを開いてその従業員オブジェクトを取得しました。セッションを閉じるまで、そのオブジェクトは同じセッションで使用できます。
質問:同じセッションで同じオブジェクトを複数回取得する必要があるのはなぜですか?