Hibernate解惑

1. 缓存

现在我所知道的Hibernate的缓存有:

  • 一级缓存:位于session内部的缓存
  • 二级缓存:SessionFactory的外置缓存
  • SessionFactory的内置缓存

   一级缓存和二级缓存都位于持久层,存放的都是数据库数据的拷贝;SessionFactory内置缓存存放的是元数据和预定义SQL,是只读缓存

  缓存的三大作用:

  1. 减少数据库的访问频率,提高访问性能;(Q: 缓存位于持久层,那么就是存放在本地的文件,什么时候将缓存的内容读入内存?不读入内存是否存在访问持久层的时间和资源消耗?)
  2. 保证缓存对象与数据库的同步,位于缓存中的对象称为持久化对象;(Q:这个应该是Hibernate缓存实现应该保证的问题??)
  3. 当持久化对象之间存在关联时,session保证对象图不会出现死锁。(不能理解)
posted @ 2013-08-07 10:04  Tilney  阅读(118)  评论(0)    收藏  举报