我正在为我的 Web 应用程序使用 Hibernate 和 Spring。
在数据库操作中,Hibernate 缓存实体并在下一个请求中返回它们,而不读取实际的数据库。我知道这会减少数据库的负载并提高性能。
但是虽然这个应用程序仍在建设中,但我需要在每个请求中从数据库加载数据(测试原因)。
有没有办法强制读取数据库?
我从这个 log4j 消息中确定了缓存。
Returning cached instance of singleton bean 'HelloController'
DEBUG [http-bio-8080-exec-42] - Last-Modified value for [/myApp/../somePageId.html] is: -1
原文由 Saif 发布,翻译遵循 CC BY-SA 4.0 许可协议
session.refresh(entity)
或entityManager.refresh(entity)
(如果您使用 JPA)将为您提供来自数据库的新数据。