我正在尝试在 Web 服务中创建缓存。为此,我创建了一个新的无状态 Bean 来将此缓存提供给其他无状态 bean。此缓存只是一个静态 ConcurrentMap,其中 MyObject 是一个 POJO。问题是似乎有不同的缓存对象。一个用于客户端 bean,另一个用于本地。
-CacheService
-CacheServiceBean
-getMyObject()
-insertMyObject(MyObject)
-size()
-SomeOtherBean
cache = jndiLookup(CacheService)
cache.insertMyObject(x)
cache.size() -> 1
在这个分配之后,如果我从 CacheServiceBean 内部调用 cache.size,我得到 0。甚至可以通过 bean 共享静态单例吗?最后我决定使用数据库表,但我仍在考虑这个问题。
感谢您的回复。