nhibernate – 什么是Hibernate中的第一级和第二级缓存?

任何人都可以用简单的话解释Hibernate中的第一级和第二级缓存是什么?
最佳答案
1.1)一级缓存

First-level cache always Associates with the Session object. Hibernate uses this cache by default. Here, it processes one
transaction after another one, means wont process one transaction many
times. Mainly it reduces the number of SQL queries it needs to
generate within a given transaction. That is instead of updating after
every modification done in the transaction, it updates the transaction
only at the end of the transaction.

1.2)二级缓存

Second-level cache always associates with the Session Factory object. While running the transactions, in between it loads the
objects at the Session Factory level, so that those objects will be
available to the entire application, not bound to single user. Since
the objects are already loaded in the cache, whenever an object is
returned by the query, at that time no need to go for a database
transaction. In this way the second level cache works. Here we can use
query level cache also. Later we will discuss about it.

引自:http://www.javabeat.net/articles/37-introduction-to-hibernate-caching-1.html

转载注明原文:nhibernate – 什么是Hibernate中的第一级和第二级缓存? - 代码日志