关于Java EE 6架构的问题

时间:2010-11-16 15:37:15

标签: model-view-controller design-patterns jsf java-ee n-tier-architecture

alt text

  1. 从上图中,我可以得出结论,Java EE 6架构是一个3层架构。我不明白的是客户层究竟是什么? UI代码不是假设是客户端层。 JSF处理应用程序的UI,不应该JSF在客户端层?

  2. Java EE 6使用3层架构,JSF是MVC模型,有人可以告诉我我要说的是正确的吗? 3层体系结构是线性模型,客户端输入 cant 直接进入数据层。一切必须通过中间层。然后我们有JSF是一个MVC模型。我们都知道控制器是FacesServlet,视图是Page本身。 什么是模型?

  3. 一个。它不是数据库本身,因为3层表示一切都必须通过中间层。 Model是托管bean,是数据库的门户吗?

    湾由于JSF已经处于中间层,因此Model实际上是数据库。

2 个答案:

答案 0 :(得分:6)

客户端层是在客户端计算机上运行的所有内容。对于(Java EE)Web应用程序,通常是webbrowser。它运行的只是HTML / CSS / JS,它通过HTTP与服务器端通信。 UI代码(JSF代码)由图片中的Web层覆盖。它生成并向客户端发送HTML / CSS / JS。

实际上,整个JSF的东西完全适合Web层。 Web层中的JSF部分本身可以在模型(托管bean),视图(JSP / Facelets页面)和控制器(FacesServlet)中进一步划分。业务层涵盖EJB。然后是持久性实体(也称为数据传输对象),它可以从数据库通过业务到Web并返回所有层。

答案 1 :(得分:1)

除了M.BalusC所解释的,这里还有一个很好的架构,它说明了(第一个问题)JSF在表示层(包括客户端)中的位置:< / p>

JavaEE Architecture with EJB and JSF

左边的两个矩形表示表示层,右边的两个矩形表示业务层。点状宽矩形表示包含Web容器和EJB容器的Java EE应用程序服务器。