1

我正在开发一个涉及 Struts 1.3、一些会话 bean 和一些 EJB 的 Web 应用程序。

Struts 动作类执行 JNDI 查找以获取实现应用程序服务层的无状态会话 bean。这个会话 bean 反过来与 DAO 对象对话,这些对象也是无状态会话 bean,它们与实体对话。

Struts Action -> Service (stateless session bean) -> DAO (stateless session bean) -> Entity

我正在考虑几种方法,需要帮助来了解它们的优缺点。

  1. 我正在考虑创建一个 ServiceFactory 和一个 ServiceFactoryProvider。测试用例将重新配置 ServiceFactoryProvider 以返回一个 TestServiceFactory ,它将产生实现服务层的无状态会话 bean 的模拟。

  2. 另一种方法是覆盖测试用例中的 JNDI 目录,以便正常的 JNDI 查找获取模拟对象。

  3. 第三种方法是使用指定 ServiceFactory 的完全限定名称的属性文件。对于生产代码,此文件将包含生产工厂的名称,对于测试代码,我们将在测试类路径中有另一个文件,其中包含测试工厂的名称。

4

0 回答 0