yma*_*ros 5 concurrency ejb ejb-3.0 java-ee-5 jakarta-ee
我有一位客户陷入 EJB 3.0 环境中。没有@Singleton,没有bean管理的并发:-(
考虑到ejb规范禁止线程管理和同步,如何实现缓存?本质上,我想要一个非同步对象缓存来执行一些昂贵的操作。
我怀疑我是否清楚地理解了你的问题!以下示例基于weblogic和eclipselink。
如果您为 EJB 使用 eclipselink JPA,则可以分别为每个实体使用缓存,如下所示:
@Entity
@Cache(type=CacheType.SOFT)
如果需要,您还可以为 persistence.xml 文件中的所有实体启用缓存。属性字段内如下所示(oracle 文档的链接):
<persistence-unit name="XYZ">
...
    <class>com.stack.Test</class>
    <properties>
        ...
        <property name="toplink.cache.type.default" value="Soft"/>
        ...
    </properties>
</persistence-unit>
缓存类型可以不同,如 Soft、Hard、Weak、Full 等。每种类型都有自己的含义。您可以从此处找到有关此缓存类型的更多信息。
| 归档时间: | 
 | 
| 查看次数: | 5111 次 | 
| 最近记录: |