我们使用Hazelcast
作为我们的Hibernate
2级缓存管理器,并且在Spring
上下文文件中对其进行了一些配置。我们的代码还通过Spring @Cacheable
注释(用于业务级缓存)进行检测,并且我们将其配置为使用Hazelcast
。问题是在开发环境中,我们有多个数据库实例,有时我们应该在它们之间切换应用程序。每次我们切换到另一个数据库时,我们也应该重新启动Hazelcast,以填充新数据,这确实是一件令人讨厌的工作:((当我们需要在不同数据库上建立应用程序的多个实例时,这会更加令人讨厌!还需要Hazelcast
的多个实例!
由于我们的代码与缓存内容紧密结合,因此很难从代码中删除新实例的缓存配置。有没有办法告诉Hazelcast
,Spring
和Hibernate
在我们存在配置的情况下不使用/填充缓存?
答案 0 :(得分:2)
您应该能够使用Spring和Hibernate配置关闭缓存。如果是Spring Boot,可以通过在application-dev.properties
中设置以下属性来实现:
spring.cache.type=NONE
spring.jpa.properties.hibernate.cache.use_second_level_cache=false