我们的项目是在 EJB 2.0 中设计的。
我们没有在 BMP EntityBeans 中使用任何类型的 EJB 持久性方法。在 SessionBeans 中,我们通过使用 getEJBXXXXHome() 方法和调用 home.findByPrimaryKey("") 方法来获取 EJB 引用来获取对 EntityHome 对象的引用。然后我们调用 CRUD 操作的实际方法。在 CRUD 操作方法中,我们的人员使用了普通的 JDBC API 方法。
现在我们正在迁移到 EJB3。作为从 EJB 2.0 到 EJB3 迁移的一部分,我将我所有的 BMP EntityBeans 转换为普通的 Java 类,即没有更多的 entitybeans。如果 EJB 容器之前为 entitybeans 维护了一个池,那么它现在就不会存在了。当我在本地机器上测试一笔交易时,它工作正常
我担心的是,它会影响生产中多个线程的性能吗?
现在更改代码后,每次调用都会创建一个 EntityBean 对象。如果在一小时内拨打了 60k 电话,那将影响我的服务器。以前在 EJB 2.0 中如何处理这一问题?有什么方法可以在更改的代码中处理它(即对于普通的 java 类,因为它们不再是 entitybeans 概念)