【问题标题】:Springboot project without service layer [duplicate]没有服务层的Spring Boot项目[重复]
【发布时间】:2020-01-16 09:54:31
【问题描述】:

我正在做一个设计略有不同的项目。在所有教程中,基本上都有代表模型的 POJO,所有业务逻辑都在服务层中实现。在我的项目中,它以没有服务层的方式实现,所有逻辑都通过定义一些静态方法在模型类中实现。有人说这是因为领域驱动设计,但我不太确定。

将所有逻辑放在 POJO 中对我来说看起来很混乱。我想了解这种设计的好处是什么?在没有服务层的情况下实现业务逻辑是否是一种好的软件实践?

【问题讨论】:

    标签: spring-boot domain-driven-design


    【解决方案1】:

    使用一堆静态方法绝对是个坏主意,也不建议在 DTO 中添加逻辑。

    关于创建服务层并没有一个普遍接受的严格规则,我认为非常重要的是应用程序设计是模块化和可测试的。

    这就是服务层模式派上用场的原因:

    • 业务逻辑被限制在一个层中,您可以将复杂性抽象为一组可供其他层使用的功能
    • 应用程序逻辑不会分散在包和类中,简化了演进过程,并且可以重构以适应未来的变化
    • 服务类可以独立测试(同样对重构至关重要)

    【讨论】:

    • 其实它不是我的 DTO,我使用单独的 DTO 对象进行响应。
    • 对不起,我的意思是 POJO(虽然在 DTO 中会一样糟糕)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-09
    • 2021-07-11
    • 2021-03-02
    • 2018-11-30
    • 2019-03-22
    • 2016-05-26
    • 2019-07-13
    相关资源
    最近更新 更多