95得票5回答
何时以及如何使用Hibernate二级缓存?

我有困难理解hibernate何时使用二级缓存以及何时使缓存失效。 这是我目前的理解: 二级缓存在会话之间存储实体,其作用域是SessionFactory 您必须告诉Hibernate要缓存哪些实体,默认情况下不会缓存任何实体 查询缓存将查询结果存储在缓存中。 我不明白的是 Hi...

66得票2回答
Hibernate + Spring中的缓存 - 一些问题

我正在使用Spring 3和Hibernate 3.6开发Web应用程序。目前,我试图了解Spring和Hibernate中的缓存机制如何工作。我找到了一些关于Hibernate缓存的资料和一些关于Spring的资料,现在我正在尝试将我的信息整合在一起。我仍然对这两个框架有一些疑问,如果有人能...

64得票6回答
Spring Boot + JPA2 + Hibernate - 启用二级缓存

我正在使用Spring Boot 1.2.5和JPA2来注释实体(并将Hibernate作为底层JPA实现)。我想在这个设置中使用二级缓存,所以实体被注释了@javax.persistence.Cacheable。我还在application.properties中添加了以下内容: spri...

38得票4回答
Hibernate缓存策略

我该如何决定使用哪个CacheConcurrencyStrategy? NonstrictReadWriteCache(非严格读写缓存), ReadOnlyCache(只读缓存), ReadWriteCache(读写缓存), TransactionalCache(事务性缓存)。 我阅读...

31得票9回答
如果数据库已经提供缓存,为什么要使用应用级缓存?

现代数据库提供缓存支持。大多数ORM框架也会缓存检索到的数据。为什么需要这种重复的操作呢?

28得票6回答
当另一个进程修改数据库时,Hibernate二级缓存失效

我们有一个应用程序,使用Hibernate的二级缓存来避免数据库查询。 我想知道是否有一种简单的方法在外部进程(例如直接连接到修改数据库的MySQL管理员)时使Java应用程序的Hibernate二级缓存失效(更新/插入/删除)。 我们使用EHCache作为我们的二级缓存实现。 我们使用...

28得票1回答
25得票1回答
从NHibernate二级缓存中移除对象

我刚开始考虑在我的一个应用程序中使用NHibernate的二级缓存。我可能会使用NHibernate.Caches.SysCache.SysCacheProvider,它依赖于ASP.net cache。 启用缓存不是问题,但我想知道如何管理缓存,例如以编程方式从缓存中删除某些实体等。 我...

25得票1回答
如何清除NHibernate的整个二级缓存

我希望能够通过代码清除NHibernate中的整个二级缓存。有一种方法可以独立于所使用的缓存提供程序吗?(我们有客户在同一个应用程序中使用memcache和syscache)。 由于数据库外部的更改可能已经发生(且我们无法保证哪些表/实体会受到影响,因此我们必须假定最坏情况),我们希望清除整...

21得票5回答
JPA默认会缓存实体吗?

我向数据库添加实体,它能正常工作。但是当我检索列表时,我获取到的是旧实体,直到我卸载应用程序并重新部署才会显示我添加的新实体。这意味着我的实体默认被缓存了吗?但是,我没有在persistence.xml或任何其他文件中设置缓存实体。 我甚至尝试调用flush()、refresh()和merg...