实际上,根据程序员必知以前端演进史一文所述Controller层应该作的事是: html
处理请求的参数 前端
渲染和重定向 java
选择Model和Service mysql
处理Session和Cookies程序员
我基本上认同这个观点,最多再加上OAuth验证(利用拦截器实现便可)。而真正的业务逻辑应该单独分处一层来处理,即常见的service层;spring
经过在Controller中引入xxxRepository来对外提供REST API。sql
详细的举例代码查看:杜琪:RESTful by Spring Boot with MySQLsegmentfault
Controller层代码容易出现两个问题:api
返回值形式不统一;restful
没有遵循标准的API设计(例如update方法实际上应该由客户端返回更新过的完整对象,这样就能够直接调用save方法)
后续,我会参考RESTful API 设计指南进行学习,对API的设计进行本身的学习总结。