1

休止状態では、すでに第 1 レベルのキャッシュがキャッシュに使用できるのに、なぜ第 2 レベルのキャッシュを使用する必要があるのでしょうか? 第 2 レベルの代わりに、キャッシングのために休止状態で第 1 レベルのキャッシュのみを使用できないのはなぜですか?

4

3 に答える 3

0

Hibernate の第 2 レベル キャッシュはオプションのキャッシュであり、第 2 レベル キャッシュでオブジェクトを見つけようとする前に、常に第 1 レベル キャッシュが参照されます。

これは主に、セッション間でオブジェクトをキャッシュする必要がある場合に使用されます。

于 2016-11-27T19:34:07.363 に答える
0

第 1 レベルのキャッシュはセッション レベルで機能します。これは、現在のセッションが閉じられるまで永続オブジェクトが追跡されることを意味します。また、このセッションを閉じる前にこのオブジェクトに加えられた変更は、データベースに反映されます。デフォルトで有効になっています。

第 2 レベルのキャッシュは SessionFactory レベルで機能するため、永続オブジェクトに加えられたすべての変更は、現在のセッションが閉じられていても追跡されます。手動で有効にする必要があります。この機能を提供するベンダーはいくつかあります。その中には、ehCache、SwarmCache、OScache などがあります。

于 2015-08-14T11:56:58.770 に答える