【问题标题】:Spring, Hibernate, Java EE in the 3 Tier architecture三层架构中的 Spring、Hibernate、Java EE
【发布时间】:2011-03-26 22:27:05
【问题描述】:

我需要开始了解将这些技术放在 3 层架构中的位置: 这就是我所拥有的......

  • 表示层:HTML、JSP

  • 应用程序。层:Java EE、Spring

  • 数据访问层:Hibernate、PostgreSQL 数据库

【问题讨论】:

  • 问题是这是否可以被认为是正确的。或者,例如,您会将休眠放在应用层中吗?

标签: hibernate spring architecture jakarta-ee layer


【解决方案1】:

您将层和层混合在一起,这让事情变得非常混乱,尤其是对您自己而言!如果您的问题是关于图层的,那么请询问关于图层的问题。

不管怎样,让我试着澄清一下……

Three Tier architecture 中,层包括:

  • 客户端层(或表示层),
  • 业务层(或中间层或逻辑层或应用层等),
  • 企业信息系统 (EIS) (或数据层)。

这是一个多层应用程序的typical layers

  • 表示层:Servlet/JSP
  • 服务层:Spring Services + Spring Transactions 或 EJB Session Beans
  • 域层:POJO
  • 数据访问层:Hibernate/JPA
  • 物理层:数据库、LDAP、文件系统等

Hibernate 将是数据访问层的一部分(但 PostgreSQL 是物理层的一部分)。

PresentationServiceDomainData Access Layers映射到Business Tier。 物理层映射到数据层

【讨论】:

  • 很好的解释。有一件事让我感到困惑——表示层不是表示层的一部分吗?编辑:哦,我想我明白了。表示层包含 Web 浏览器、Web 服务客户端等。
【解决方案2】:

是的,我会将 Hibernate 放在数据访问层。实际上第三层是“数据层”而不是数据访问层,这可能会让你感到困惑。因此,与业务逻辑相关的所有内容都进入应用程序(或业务)层。

【讨论】:

    【解决方案3】:

    如果您想使用 Spring MVC,它很可能会存在于表示层中。

    【讨论】:

      猜你喜欢
      • 2013-08-02
      • 2011-05-06
      • 2013-09-27
      • 2012-03-13
      • 2020-04-18
      • 1970-01-01
      • 2012-06-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多