我的Java应用程序每10秒向mysql服务器查询一次。
我手动将新行插入表中。
而且Hibernate找不到它。
同样,当我手动删除一行时,Hibernate显示该行存在。
我建议这是因为Hibernate缓存。
有什么办法可以禁用它吗?
谢谢!
您是指一级缓存还是二级缓存?使用诸如Ehcache之类的Hibernate二级缓存来缓存与您手动修改的同一表中的行相对应的实体,可能会导致您描述的行为。一级缓存不会导致此行为,而且我认为您也不能禁用它。
要禁用Hibernate二级缓存,请从Hibernate配置文件中删除hibernate-cfg.xml
所有引用二级缓存的行。例如:
<!-- Enable the second-level cache -->
<property name="hibernate.cache.provider_class">
net.sf.ehcache.hibernate.EhCacheProvider
</property>
<property name="hibernate.cache.region.factory_class">
net.sf.ehcache.hibernate.EhCacheRegionFactory
</property>
<property name="hibernate.cache.use_query_cache">true</property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.use_structured_entries">true</property>
<property name="hibernate.cache.generate_statistics">true</property>
问题内容: 我正在测试一些针对强大压力的JSON API。然而,在某一时刻,响应时间趋于平稳的“趋势”。它增加到一个很高的点,然后下降到一个永不改变的响应时间。 我尝试取消所有两个JMeter缓存管理器选项,并将最大缓存大小设置为1。还添加了一个HTTP标头,该标头在Cache-Control上的最大寿命为零。 如何完全禁用JMeter中的缓存? 注意 : 我搜索了相关文章:但是,出现的是将JMe
我目前正在使用Spring3注释和Hibernate3来实现数据库连接。我还必须使用spring Tiles。 我的spring-servlet.xml是: 我的控制器类: 和我的serviceImpl类: 和我的DaoImpl类: 它仍然给出了以下例外情况。 org.springframework.beans.factory.BeanCreationException:创建名为“MyContro
问题内容: 我已经在Windows 7 x64开发机器上以手动方式安装了Node.js: 我将主节点x64二进制文件与npm软件包管理器一起放在中。像超级按钮一样工作,我无需处理安装程序就可以更新主二进制文件。 我无法解决的唯一问题是移动缓存文件夹。当我安装本地软件包时: …缓存位于文件夹下。我想将其更改为: 如何更改npm缓存文件夹或完全禁用它? 问题答案: 您可以使用命令行更改npm缓存文件夹
我的Spring应用程序由两个上下文xml配置文件组成,第一个是根上下文。xml仅扫描非控制器带注释的bean: 而第二个servlet上下文。xml包含所有spring mvc设置和扫描控制器带注释的bean web.xml上的DispatcherServlet配置如下所示 我想尝试基于注释的缓存,所以我将以下bean定义添加到root-context.xml 并使用一个带有注释的类来测试这一点
在我们的组织中,我们有几个微服务和许多库。 有些库定义的“public”类不用于公共用途-仅在多个包中的库内部(因此不能是包私有的) 我想添加一些类似于Kotlin的“内部”修饰符的东西——一个检查风格规则/注释处理器/测试组件,用于验证消费者应用程序没有导入这些类。 例如,我将它们标记为@ForInternalUsageOnly或放入包com中。奥罗格。迈里布。内部使用 什么是非复制粘贴的(例如
我正在使用Spring框架和hazelcast缓存在服务层缓存REST APi。我缓存的api有@Cacheable注释,带有cachename和keygenerator,工作很好。我正在寻找使用application属性或Consuler属性启用/禁用缓存的最佳方法。为此,我试图传递@cachable注释的condition属性中的属性,但没有成功。使用这种方法,我最终将在多个地方传递相同的值(