什么可以hibernate的hibernate.cache.use_structured_entries做什么?

ket*_*yao 4 java caching hibernate

<property name="hibernate.cache.use_structured_entries">true</property>
Run Code Online (Sandbox Code Playgroud)

它能做什么?我不知道?请举个例子!

Xav*_*ica 10

来自Hibernate Docs - 第3章.配置:

强制Hibernate以更人性化的格式将数据存储在二级缓存中.例如,true | false

它指定条目是否以可读格式写入L2高速缓存中.如果您打算浏览缓存,则可能应该将其打开.

来自Hibernate Docs - 第19章.提高性能:

要浏览二级或查询缓存区域的内容,请使用Statistics API:<code ommited>您需要启用统计信息,并可选择强制Hibernate以更可读的格式保留缓存条目:
hibernate.generate_statistics = true
hibernate.cache.use_structured_entries = true

将参数设置为true将在L2缓存中产生一些开销.看起来,它无法在集群环境中关闭,因为在这种情况下需要为实体重新水化所需的开销.

您可能会发现以下博客文章特别有用:Hibernate Wars:查询缓存反击,特别是Bonus:L2缓存减少部分.