1
我有一個grails應用程序。我想用grails,perl外部的東西將數據加載到底層數據庫中,具體來說。我知道我必須在外部數據加載後更新hibernate序列,否則在grails中的下一個創建對象中,hibernate會拋出異常;但還有什麼我需要更新?例如,我是否必須清除休眠緩存?這似乎是一個非常普遍的問題,但Grails文檔中沒有對此進行討論。謝謝。Grails:在外部加載數據後更新休眠
我有一個grails應用程序。我想用grails,perl外部的東西將數據加載到底層數據庫中,具體來說。我知道我必須在外部數據加載後更新hibernate序列,否則在grails中的下一個創建對象中,hibernate會拋出異常;但還有什麼我需要更新?例如,我是否必須清除休眠緩存?這似乎是一個非常普遍的問題,但Grails文檔中沒有對此進行討論。謝謝。Grails:在外部加載數據後更新休眠
Hibernate對這個API的。你可以通過sessionFactory.getQueryCache(查詢緩存),並使用清除
sessionFactory.queryCache.clear()
您可以使用完整的類名訪問緩存中域類,例如
def cache = sessionFactory.getSecondLevelCacheRegion('com.foo.bar.Book')
,並明確表示通過
sessionFactory.getSecondLevelCacheRegion('com.foo.bar.Book').clear()
您也可以撥打這個SessionFactory逐出()整個班級的
sessionFactory.evict(com.foo.bar.Book)
或單個實例
sessionFactory.evict(com.foo.bar.Book, 42)