【问题标题】:Java Architecture 3 tier object designJava 架构 3 层对象设计
【发布时间】:2017-05-31 14:19:09
【问题描述】:

这是一个 Spring Boot API 项目。我们目前有一个 3 阶段模型设计,我想知道这是否是企业最佳实践。例如,如果有人为所有汽车发出 GET 调用,那么 API 将:

  1. 调用数据库获取所有汽车并将它们存储在CarEntity。这包含一些数据库信息,如添加日期、更新日期等
  2. 将实体转换为Car 对象后将其传递给业务层。这会去除额外的数据库信息。
  3. Car 对象传递给控件以在转换为CarDTO 对象后发送给客户端。

所以对于 1 个通用类型,我们有 3 个对象:CarEntityCarCarDTO。这是最有效和最佳的做法吗?

【问题讨论】:

    标签: java architecture entity dto api-design


    【解决方案1】:

    这真的取决于您的要求和设计需求。

    我设计简单的 Web 应用程序,并且通常在所有三个层(持久性、业务和 Web)中使用相同的对象。

    但在某些情况下,您可能需要不止一个类。例如,如果您为远程客户端公开一个类,则创建一个新类而不是重用持久层类是有意义的。

    在 EE 世界中,他们喜欢强调 Separation of ConcernsSOLID pricipals。因此,您可能会争辩说,从长远来看,多个对象是最有效和最佳实践的。就我的使用而言,它们通常是缠绕和混乱的项目。在某些情况下,它们是必要的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-21
      • 1970-01-01
      • 2011-07-30
      • 2018-09-26
      • 2011-09-30
      • 2010-12-09
      • 1970-01-01
      • 2010-10-04
      相关资源
      最近更新 更多