从上图中,我可以得出结论,Java EE 6架构是一个3层架构。我不明白的是客户层究竟是什么? UI代码不是假设是客户端层。 JSF处理应用程序的UI,不应该JSF在客户端层?
Java EE 6使用3层架构,JSF是MVC模型,有人可以告诉我我要说的是正确的吗? 3层体系结构是线性模型,客户端输入 cant 直接进入数据层。一切必须通过中间层。然后我们有JSF是一个MVC模型。我们都知道控制器是FacesServlet
,视图是Page
本身。 什么是模型?
一个。它不是数据库本身,因为3层表示一切都必须通过中间层。 Model是托管bean,是数据库的门户吗?
或
湾由于JSF已经处于中间层,因此Model实际上是数据库。
答案 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>
左边的两个矩形表示表示层,右边的两个矩形表示业务层。点状宽矩形表示包含Web容器和EJB容器的Java EE应用程序服务器。