【问题标题】:Spring, Hibernate and Ehcache - Wrong entitiesSpring、Hibernate 和 Ehcache - 错误的实体
【发布时间】:2023-03-29 05:38:01
【问题描述】:

我有一个使用 spring+hibernate 作为数据层的 webapp。我正在使用 ehcache 作为提供者的二级缓存。到目前为止一切似乎都正常,但有时我们会遇到一个我无法真正弄清楚 atm 的问题。

我的一个表用于应用程序中的标签 - 每个登录的用户都使用他设置的语言访问此表。 90% 的时间都在工作。但有时用户会得到错误语言的标签,例如而不是德语,一切都变成了意大利语。

注销并登录后,所有标签都正确。

你们中有人遇到过这样的事情吗?我不知道在哪里看:spring+hibernate+ehcache 是一个可靠的包还是不是?

干杯

【问题讨论】:

  • 我现在做了一些测试。有 7 位用户以 7 种语言登录。没问题。只是一个想法:在客户端有一个正在使用的代理。我的问题可能来自这里吗?

标签: java hibernate spring ehcache


【解决方案1】:

Spring/Hibernate/EhCache 是一个可靠的堆栈,我 99% 确定这是您代码中的错误。

标签是否有可能静态缓存在应用程序的某处?

确保在您的实体类中正确实现 equals 和 hashcode,您可以找到有关如何做到这一点的见解here

尝试远程调试您的服务器,在您的 DAO 中设置断点以检查是否实际获取了数据。

【讨论】:

  • 好吧,我使用这个表的 dao 类作为 spring bean。因此,每个请求都会生成所有列表和选择等。也许是某种旧的 jsps 在这里返回?
  • 好点。我忽略了我的实体类,所有其他的都有 hashCodes 和 equals 方法,这个没有。我现在实施了它们。也许这成功了。
  • 这些方法对 Hibernate 至关重要,我怀疑您遇到了哈希码冲突
猜你喜欢
  • 1970-01-01
  • 2011-07-23
  • 2014-06-20
  • 2010-10-08
  • 2023-01-19
  • 2018-06-28
  • 1970-01-01
  • 2012-12-12
相关资源
最近更新 更多