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,这让我很容易在项目树中注意到这样的 类。