Java 架构 3 层对象设计
Java Architecture 3 tier object design
这是一个 Spring 引导 API 项目。我们目前有一个三阶段模型设计,我想知道这是否是企业最佳实践。例如,如果有人为所有汽车发出 GET
呼叫,那么 API 将:
- 调用数据库获取所有汽车并将它们存储在
CarEntity
中。这包含一些数据库信息,如添加日期、更新日期等
- 将实体转换为
Car
对象后传递给业务层。这会去除额外的数据库信息。
- 将
Car
对象传递给控件,在转换为 CarDTO
对象后发送给客户端。
所以对于 1 个通用类型,我们有 3 个对象:CarEntity
、Car
、CarDTO
。这是最有效的最佳做法吗?
这真的取决于您的要求和设计需要。
我设计简单的 Web 应用程序并且通常在所有三个层(持久性、业务和 Web)中使用相同的对象。
但在某些情况下,您可能需要多个 class。例如,如果您为远程客户端公开一个 class,创建一个新的 class 而不是重复使用持久层 class.
是有意义的
在 EE 界,他们喜欢强调 Separation of Concerns and SOLID pricipals。因此,您可能会争辩说,在长 运行 中,多个对象是最有效和最佳实践。对于我的使用,它们通常是冗长且混乱的项目。在某些情况下,它们是必要的。
这是一个 Spring 引导 API 项目。我们目前有一个三阶段模型设计,我想知道这是否是企业最佳实践。例如,如果有人为所有汽车发出 GET
呼叫,那么 API 将:
- 调用数据库获取所有汽车并将它们存储在
CarEntity
中。这包含一些数据库信息,如添加日期、更新日期等 - 将实体转换为
Car
对象后传递给业务层。这会去除额外的数据库信息。 - 将
Car
对象传递给控件,在转换为CarDTO
对象后发送给客户端。
所以对于 1 个通用类型,我们有 3 个对象:CarEntity
、Car
、CarDTO
。这是最有效的最佳做法吗?
这真的取决于您的要求和设计需要。
我设计简单的 Web 应用程序并且通常在所有三个层(持久性、业务和 Web)中使用相同的对象。
但在某些情况下,您可能需要多个 class。例如,如果您为远程客户端公开一个 class,创建一个新的 class 而不是重复使用持久层 class.
是有意义的在 EE 界,他们喜欢强调 Separation of Concerns and SOLID pricipals。因此,您可能会争辩说,在长 运行 中,多个对象是最有效和最佳实践。对于我的使用,它们通常是冗长且混乱的项目。在某些情况下,它们是必要的。