cdn的一级缓存,二级缓存是什么意思

2024-11-30 01:49:04
推荐回答(1个)
回答1:

Hibernate的缓存包括Session的缓存和SessionFactory的缓存,其中 SessionFactory的缓存又可以分为两类:内置缓存和外置缓存。Session的缓 存是内置的,不能被卸载,也被称为Hibernate的第一级缓存。 SessionFactory的内置缓存和Session的缓存在实现方式上比较相似,前者是 SessionFactory对象的一些集合属性包含的数据,后者是指Session的一些集 合属性包含的数据。SessionFactory的内置缓存中存放了映射元数据和预定义 SQL语句,映射元数据是映射文件中数据的拷贝,而预定义SQL语句是在 Hibernate初始化阶段根据映射元数据推导出来,SessionFactory的内置缓存 是只读的,应用程序不能修改缓存中的映射元数据和预定义SQL语句,因此 SessionFactory不需要进行内置缓存与映射文件的同步。SessionFactory的 外置缓存是一个可配置的插件。在默认情况下,SessionFactory不会启用这个 插件。外置缓存的数据是数据库数据的拷贝,外置缓存的介质可以是内存或者硬 盘。SessionFactory的外置缓存也被称为Hibernate的第二级缓存。