hibernate - 清除特定域类的 hibernate 缓存

标签 hibernate grails

想象一下我有以下类(class):

class Test {
   String name    
   static mapping = {
      cache true
      version false
}

目标是在数据库级别使用 native sql插入行,以使hibernate无法识别这些更改。我该如何通知有关此新行的信息?

是否有类似-> Test.clearCache的东西?

最佳答案

尽管这是一种过时的方法,但它更短并且仍然有效。

def sessionFactory // inject Hibernate sessionFactory
sessionFactory.evict(clazz, id)
// or evict all class instances:
sessionFactory.evict(clazz)

文档为here,请通过Cache查看最新信息。

关于hibernate - 清除特定域类的 hibernate 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6625515/

相关文章:

java - Hibernate 二级缓存——程序不终止

java - 为什么我的 @OneToMany 属性会出现主键冲突?

hibernate - 禁用非关键Grails/GORM域类的锁定

grails - 用大量变量更新域类对象的最佳方法是什么

grails - 阻碍Grails发展

java - 如何减少 hibernate 集合的索引大小(使用复合元素设置)?

java - 无法在 hibernate 状态下保留哈希集

grails - MissingMethodException 是一项服务 : "No signature of method"

javascript - .val ("value") 在 jQuery 1.5 中没有按预期工作

grails - 如何在功能上测试依赖的Grails应用程序