确定 Spring Boot REST 控制器方法中的最佳代码复杂性

问题描述 投票:0回答:1

我目前正在开发一个 Spring Boot 项目,其中在控制器类中定义了多个 REST 端点。在实现这些端点时,我开始想知道在这些控制器方法中组织代码的最佳实践。

具体来说,我很好奇理想情况下应包含在单个控制器方法中以保持干净且可读的代码的代码量。每个方法是否应该严格地将功能委托给服务层方法,或者控制器方法本身具有更复杂的逻辑是否可以接受?

例如,考虑我的 PersonController 类中的以下方法:

@GetMapping(value = "/{id}")
@ResponseStatus(HttpStatus.OK)
public PersonResponse getPersonById(@PathVariable Long id) {
    return personService.fetchPersonById(id);
}

我知道这种级别的代码组织通常被认为是干净的,但我不确定在仍然遵守干净代码原则的情况下可以包含在方法中的可接受的逻辑量。确定控制器方法内复杂性阈值的推荐方法是什么?

如果您有关于 Spring Boot REST 控制器内代码组织的见解或最佳实践,我将不胜感激。谢谢!

java spring-boot rest code-organization
1个回答
0
投票

Tom Hombergs 有一个有趣的项目,它展示了维护干净架构的工作结构。我在一些项目中成功地采用了这些想法。我也读过他的书。

实现简洁/六边形架构的示例方法

亲自实践清洁架构

© www.soinside.com 2019 - 2024. All rights reserved.