【发布时间】:2009-11-30 15:35:34
【问题描述】:
使用 EJB 实体 bean,您可以配置 bean,以便当一个线程可以访问 EJB 实体 bean 时,没有其他线程可以访问 EJB bean。容器会阻塞其他线程,直到有锁的线程用完 bean。有没有“春天的方式”来做到这一点?还是只需要使用标准的 Java 并发同步方法来处理这个问题?
【问题讨论】:
标签: java spring concurrency synchronization ejb
使用 EJB 实体 bean,您可以配置 bean,以便当一个线程可以访问 EJB 实体 bean 时,没有其他线程可以访问 EJB bean。容器会阻塞其他线程,直到有锁的线程用完 bean。有没有“春天的方式”来做到这一点?还是只需要使用标准的 Java 并发同步方法来处理这个问题?
【问题讨论】:
标签: java spring concurrency synchronization ejb
如果您指的是 EJB3 之前的实体,那么这个模型有点破损,并且可能不是您想要遵循的。应避免同时访问持久实体的同一个 java 对象实例。相反,每个线程都应该从容器中获取自己的实体实例。
控制对实体的并发访问的常用方法是使用事务,让数据库承担压力。 Spring+Hibernate/JPA 能够胜任这一点。
【讨论】: