2010-05-27 41 views
1

我有一个使用spring + hibernate作为我的数据层的webapp。我使用ehcache作为提供程序的第二级缓存。一切似乎工作到目前为止,但有时我们遇到一个我不能真正弄清楚的问题。Spring,Hibernate和Ehcache - 错误的实体

我的一个表,用于在应用程序中的标签 - 谁登录访问该表与他的一套语言每一个用户。 90%的时间工作。但有时用户会得到错误语言的标签,例如而不是德国人,一切都转向意大利。

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

有没有人遇到类似这样的事情?我不确定在哪里看:spring + hibernate + ehcache是​​一个可靠的软件包,还是不是?

干杯

+0

我现在已经做了一些测试。有7个用户以7种语言登录。没问题。只是一个想法:在客户端有一个代理正在使用。我的问题是否可以从这里得到? – onigunn 2010-05-28 07:13:37

回答

1

春/休眠/的Ehcache是​​一个坚实的堆栈,我99%肯定它在你的代码中的错误。

标签在应用程序中的某处被静态缓存的机会是多少?

确保equals和hashCode在你的实体类proprerly实现的,你可以找到关于如何做到这一点here

尝试远程调试服务器的见解,在你的DAO中设置断点来检查数据实际上是牵强。

+0

那么,我使用这个表的dao类作为spring bean。因此,每个请求都会生成所有列表和选择等。也许某种旧的jsps会回到这里? – onigunn 2010-05-27 14:19:51

+0

好点。我忽略了我的实体类,所有其他的都有hashCode和equals方法,但这不是。我现在执行它们。也许这是诀窍。 – onigunn 2010-05-28 07:26:40

+0

这些方法对于Hibernate来说至关重要,我怀疑你有散列码冲突 – Guillaume 2010-05-28 13:20:20

相关问题