Spring MVC:服务中使用的 POJO 的正确包
Spring MVC: correct package for POJO used in services
我正在 Spring Boot 上开发一个 MVC 应用程序,这里是它的包的结构:
包 'domain' 包含用于 Redis 的 JPA 实体和 POJO;包 "repository" 包含 Spring 数据存储库以使用领域模型;包 "services" 包含服务层并与存储库一起使用;包 "controller" 包含与服务一起工作的 REST 控制器。
但通常,服务需要使用一些 POJO 来获取特定于服务的数据并将其传递给控制器。比如classFeedPage,本质上是POJO,聚合数据,计算FeedService,与数据库无关
能否为此类 POJO 提供合适的软件包:
1) 将其与数据库实体一起存储在 "domain" 中
2)将其存储在服务包中(services.feed)?
3) 在每个服务下创建包 "model" 并在那里存储 POJO
谢谢!
在core下创建一个名为model的文件夹。并将它们用于数据传输。这些 POJO 总是被命名为 DTO 或数据传输对象,最好放在它们自己的包中,如模型。在 SOA 中有一种做法是将数据传输对象放在特定于服务的文件夹中,但现在有 Spring 和基于包的 AOP 定义的可能性,最好为它们有一个单独的包。
偶然发现了我的老问题。
最终在服务层的相应包中添加了一个 DOs 类。 DO 的命名约定是 xxxDO
,这让我很容易在项目树中注意到这样的 类。
我正在 Spring Boot 上开发一个 MVC 应用程序,这里是它的包的结构:
包 'domain' 包含用于 Redis 的 JPA 实体和 POJO;包 "repository" 包含 Spring 数据存储库以使用领域模型;包 "services" 包含服务层并与存储库一起使用;包 "controller" 包含与服务一起工作的 REST 控制器。
但通常,服务需要使用一些 POJO 来获取特定于服务的数据并将其传递给控制器。比如classFeedPage,本质上是POJO,聚合数据,计算FeedService,与数据库无关
能否为此类 POJO 提供合适的软件包: 1) 将其与数据库实体一起存储在 "domain" 中 2)将其存储在服务包中(services.feed)? 3) 在每个服务下创建包 "model" 并在那里存储 POJO
谢谢!
在core下创建一个名为model的文件夹。并将它们用于数据传输。这些 POJO 总是被命名为 DTO 或数据传输对象,最好放在它们自己的包中,如模型。在 SOA 中有一种做法是将数据传输对象放在特定于服务的文件夹中,但现在有 Spring 和基于包的 AOP 定义的可能性,最好为它们有一个单独的包。
偶然发现了我的老问题。
最终在服务层的相应包中添加了一个 DOs 类。 DO 的命名约定是 xxxDO
,这让我很容易在项目树中注意到这样的 类。