您将在哪一层实现Java web服务



我在今天的面试中被问到这个问题,我申请了一个研究生开发角色,我被问到

在Java ee应用程序中,该应用程序分布在多个层上,即:

Web/Presentation layer 
Business layer
integration layer
database layer

在这些层中,web服务最有可能实现

(没有足够的细节,因为我直接被问到这个问题)

我已经搜索了所有地方,但找不到答案

这有点依赖。我倾向于业务层,因为web服务通常与系统的核心功能相关联。然而,它也有可能在集成层中(我假设这意味着DAO、文件传输对象等)。如果它是一个"内部web服务",那么它可以作为一个伪信息代理来访问这里。我不会把它放在数据库层或表示层,因为这两件事与web服务无关。询问web层是一种欺骗那些对MVC/web开发框架没有完全理解的候选人的方式。

嗯,不是web/表示层;我想说的是业务层。这样,多个客户端可以通过使用这些web服务与它进行通信。

在我看来,在大多数情况下,它应该在业务层(提供特定的高级服务,隐藏所有内部工作)。也许您可以考虑在集成层中实现它,但这将取决于服务的目的。

业务层将业务逻辑与其他模块分离,如数据访问层(DAL)和用户界面(UI)。虽然WS可以实现业务逻辑,但它也可以被认为是接口层的p/p>

请注意,每个项目都有四层1) 。前端层/控制器层(2)。业务委派层(3)。服务层(4)。DAO层总结:-我们总是要开发一个项目,首先使用jsp编写客户端交互页面,最终用户将数据放在jsp中,然后数据将由servlet处理,然后调用值对象(VO),即使用业务对象将数据设置到业务层的javabean类,之后业务层将调用pojo类,即除了该层的服务层之外什么都没有负责调用DAO层,将数据持久化到持久化软件中(后端),因此在项目开发中要小心,服务层总是会将服务暴露给外部web层,而不是任何其他层。

最新更新