Hibernate Caching
Previous Home Next

caching is the facility of storing object temporally in the memory . The purpose of caching to improve the performance by reducing database hits . If same object is required by different session or user then it make sense to fetch them only one and to store them into the cache so that they can provide the cache each time they are requested.

Hibernate support caching at two levels:-

  1. First Level Caching
  2. Second Level Caching
First Level Caching:-(Transactional scope caching)

First level caching is implicitly enable. It is implemented by session. First level caching is responsible for storing the object used by user.Object in this cache has transactional scope, once the transaction is completed object of this cache are synchronize to the database and cache is discarded.

Second Level Cache :-(Application Scope caching)

Second level cache is not enable by default. This cache has a application scope, Object in this cache are shared by multiple users. This cache is managed by sessionFactory

NOTE:- Hibernate does not provide implementation of Second level caching , it only provide specification how second level cache should be implemented. Third party implementation of second level cache are available:

  • EHCACHE ( Easy hibernate Caching)
  • OSCACHE (Open source caching)
Previous Home Next