关于编写RESTful API服务的最佳实践有很多,但很难找到有关编写可扩展、易于维护和结构良好的RESTful API客户端的有用信息。
我使用的架构简述:
我有一个使用Java语言编写的Web应用程序,后端使用Spring MVC,前端使用HTML+CSS+JavaScript+AJAX。
我将客户端后端部分分为3个部分:
- 数据访问对象层(这里封装了对API的请求,因此可以轻松更改其实现,例如从URLConnection移动到Spring RestTemplate);
- 聚合层(这里对来自不同API方法的数据进行聚合);
- 控制器层(用于与前端通信)。
问题:
对我来说,这是非常灵活的架构。然而,我的很多朋友都认为DAO层只能用于与数据库通信。
- 我应该将DAO类重命名吗?例如从"CarDAO"更改为"CarRepository"等?
- 这是RESTful API客户端的好架构吗?
- 有什么可以改进的地方吗?是否可以在较少的层数下达到同样的灵活性?