一、现象
最近刚接手旧项目,需要更新些需求。
在完成业务代码后利用接口工具调试,结果一直报404。如下图

二、分析
因为是MVC结构的,我一直以为是model有什么问题。分析了页面的消息描述,他提示这个文件没找到,按理说应该是返回Json格式报文,怎么会和页面有关系呢?
开始对比代码,发现其他方法上会有@ResponseBody注解

看到这就明白了,之前的项目Controller类注解都是用的@RestController。旧项目因为涉及model所以在需要返回json格式的接口要加@ResponseBody。
三、复习@RestController
进入@RestController注解

很明显,@RestController=@Controller+@ResponseBody
相当于把这个类交给Spring管理的同时,所有返回都是Json格式。
很低级的错误,下次还是要先学习前辈们的代码再写业务!
在接手旧项目并更新需求时遇到404错误。问题源于对MVC结构中@Controller与@RestController注解的误解。分析后发现,缺少@ResponseBody注解导致接口未能返回Json格式数据。添加注解后,问题得到解决,提醒开发者应熟悉项目代码规范。

893

被折叠的 条评论
为什么被折叠?



