我正在使用 Spring Boot 构建可部署的简单 REST。决定通过首先使用失败的验收测试然后使用 TDD 直到它的绿色来创建它。
我的模块很简单,我有 3 个 API:
- 从数据存储中检索数据列表。
- 将项目添加到数据存储区。
- 从数据存储中删除项目。
我觉得抽象数据存储并可能由 Map 数据结构支持以进行测试是个好主意,如果我想用于部署/发布和端到端测试,可以将其与 NoSQL 或 SQL db 一起使用。
在服务层方面,我不确定,因为它只会将调用委托给没有逻辑的存储库。
所以标准方法是控制器->服务->存储库。在我的案例中,服务做的不多(可能有一些异常处理,但不多),我最终会得到接口和实现作为额外的代码以及几行代码。在我的情况下,我喜欢使用控制器-> 存储库解决方案,但这不是我见过的做法,也不确定其他人会如何看待它。
实现这种系统的最佳方法是什么?